﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using System.Data.SqlClient;

namespace TCCT_CTC_CSDLDangVienV1.DanhMuc
{



    public partial class frmCanBoUpdate : frmBase
    {
        public string Action = MyConst.ACTION.Insert;
        public string SelectedKhoa = string.Empty;
        private bool IsFormFind = false;
        public string SelectedDauMoiID = "";

        //Toàn bộ Button Edit trên form sẽ lưu ID đã chọn vào trong thuộc tính tag, không có giá trị thì để null

        public frmCanBoUpdate()
        {
            InitializeComponent();
        }



        private void frmCanBoUpdate_Load(object sender, EventArgs e)
        {
            try
            {
                if (SelectedDauMoiID == "") SelectedDauMoiID = MyCommon.CurrentUserDauMoiID;

                ApplyUI();

                if (!Permision())
                    return;

                FillDataToControls();

                BindDataToControl();


            }
            catch (Exception _ex)
            {
                ShowErrorMessage(_ex);
            }
        }

        //Nơi gán thuộc tính giao diện cho các control
        private void ApplyUI()
        {

            UI.TextBox.ApplyDefault(txtBac_Luong);
            UI.TextBox.ApplyDefault(txtBenh_Chi_T);
            UI.TextBox.ApplyDefault(txtBiDanh);

            UI.TextBox.ApplyDefault(txtChuc_Kiem);
            UI.TextBox.ApplyDefault(txtChuc_Vu);
            UI.TextBox.ApplyDefault(txtCMNV);
            UI.TextBox.ApplyDefault(txtCVu_Dang_T);
            UI.TextBox.ApplyDefault(txtCVu_DThe_T);
            UI.TextBox.ApplyDefault(txtDanhHieu);
            UI.TextBox.ApplyDefault(txtDi_NN);
            UI.TextBox.ApplyDefault(txtDia_Chi);
            UI.TextBox.ApplyDefault(txtDon_Vi_CT);
            UI.TextBox.ApplyDefault(txtDTich_NO);

            UI.TextBox.ApplyDefault(txtHeSoLuong);

            UI.TextBox.ApplyDefault(txtHoTen_KS);
            UI.TextBox.ApplyDefault(txtHoVaTen);
            UI.TextBox.ApplyDefault(txtKhoi_CTac);
            UI.TextBox.ApplyDefault(txtKTCT_BT);
            UI.TextBox.ApplyDefault(txtKTCT_VC);
            UI.TextBox.ApplyDefault(txtLy_Do_Vao);
            UI.TextBox.ApplyDefault(txtMuc_Luong);
            UI.TextBox.ApplyDefault(txtNgay_Ra);
            UI.TextBox.ApplyDefault(txtNgach_Luong);
            UI.TextBox.ApplyDefault(txtNganh_CTac);
            UI.TextBox.ApplyDefault(txtNgay_CDCT);
            UI.TextBox.ApplyDefault(txtNgay_Sinh);
            UI.TextBox.ApplyDefault(txtNgay_Vao);
            UI.TextBox.ApplyDefault(txtNgay_VDang);
            UI.TextBox.ApplyDefault(txtNQuan_HT);
            UI.TextBox.ApplyDefault(txtNQuan_XP);
            UI.TextBox.ApplyDefault(txtQue_Quan_HTVC);
            UI.TextBox.ApplyDefault(txtQue_Quan_XPVC);
            UI.TextBox.ApplyDefault(txtSo_ACE);
            UI.TextBox.ApplyDefault(txtSo_ACE_VC);
            UI.TextBox.ApplyDefault(txtSo_AET);
            UI.TextBox.ApplyDefault(txtSo_AET_VC);
            UI.TextBox.ApplyDefault(txtSo_Hieu_SQ);
            UI.TextBox.ApplyDefault(txtSo_Hieu_QN);
            UI.TextBox.ApplyDefault(txtTen_Khac);
            UI.TextBox.ApplyDefault(txtThang_BC);
            UI.TextBox.ApplyDefault(txtThang_CBac);
            UI.ApplyNotNull(txtHoTen_KS);

            UI.TextBox.ApplyDefault(txtThang_CM);
            UI.TextBox.ApplyDefault(txtThang_CVu);
            UI.TextBox.ApplyDefault(txtThang_Doan);
            UI.TextBox.ApplyDefault(txtThang_NL);
            UI.TextBox.ApplyDefault(txtThang_NNgu);
            UI.TextBox.ApplyDefault(txtThang_TNgu);
            UI.TextBox.ApplyDefault(txtThang_XNgu);
            UI.TextBox.ApplyDefault(txtThu_May);
            UI.TextBox.ApplyDefault(txtThu_May_VC);
            UI.TextBox.ApplyDefault(txtTQuan_HT);
            UI.TextBox.ApplyDefault(txtTQuan_XP);
            UI.TextBox.ApplyDefault(txtTru_Quan_HTVC);
            UI.TextBox.ApplyDefault(txtTru_Quan_XPVC);
            UI.TextBox.ApplyDefault(txtTruoc_CM);

            //UI.Button.ApplyDefault(btnThemQT_CD);
            //UI.Button.ApplyDefault(btnThemQT_CT);
            //UI.Button.ApplyDefault(btnThemQT_DG);
            //UI.Button.ApplyDefault(btnThemThanNhan);
            //UI.Button.ApplyDefault(btThemQT_DT);

            //UI.Button.ApplyDefault(btnLuuTN63);

            //UI.Button.ApplyDefault(btnThemQT_CD);

            //UI.Button.ApplySave(btnLuu);
            //UI.Button.ApplyDefault(btnInHoSo);
            //UI.Button.ApplyDefault(btnInHoSo_1);

            //UI.Button.ApplyClose(btnThoat);

            UI.Grid.ApplyDefault(dgTieng, false);

            this.MainGridViewTieng.Columns["CreateDateTieng"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewTieng.Columns["CreateDateTieng"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.ddMMyyyyHHmmss;
            this.MainGridViewTieng.Columns["UpdateDateTieng"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewTieng.Columns["UpdateDateTieng"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.ddMMyyyyHHmmss;
            this.MainGridViewTieng.Columns["ThoiGian"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewTieng.Columns["ThoiGian"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.MMyyyy;

            UI.Grid.ApplyDefault(dgQT_CD, false);

            this.MainGridViewChienDau.Columns["CreateDateChienDau"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewChienDau.Columns["CreateDateChienDau"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.ddMMyyyyHHmmss;
            this.MainGridViewChienDau.Columns["UpdateDateChienDau"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewChienDau.Columns["UpdateDateChienDau"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.ddMMyyyyHHmmss;
            this.MainGridViewChienDau.Columns["Bat_Dau"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewChienDau.Columns["Bat_Dau"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.MMyyyy;
            this.MainGridViewChienDau.Columns["Ket_Thuc"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewChienDau.Columns["Ket_Thuc"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.MMyyyy;


            UI.Grid.ApplyDefault(dgQT_CT, false);

            this.MainGridViewCongTac.Columns["CreateDateCongTac"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewCongTac.Columns["CreateDateCongTac"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.ddMMyyyyHHmmss;
            this.MainGridViewCongTac.Columns["UpdateDateCongTac"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewCongTac.Columns["UpdateDateCongTac"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.ddMMyyyyHHmmss;
            this.MainGridViewCongTac.Columns["Tu"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewCongTac.Columns["Tu"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.MMyyyy;
            this.MainGridViewCongTac.Columns["Den"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewCongTac.Columns["Den"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.MMyyyy;

            UI.Grid.ApplyDefault(dgQT_DG, false);//khen thưởng kỷ luật

            this.MainGridViewSuKien.Columns["CreateDateSuKien"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewSuKien.Columns["CreateDateSuKien"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.ddMMyyyyHHmmss;
            this.MainGridViewSuKien.Columns["UpdateDateSuKien"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewSuKien.Columns["UpdateDateSuKien"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.ddMMyyyyHHmmss;
            this.MainGridViewSuKien.Columns["Thang_SK"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewSuKien.Columns["Thang_SK"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.MMyyyy;

            UI.Grid.ApplyDefault(dgQT_DT, false);

            this.MainGridViewDaoTao.Columns["CreateDateDaoTao"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewDaoTao.Columns["CreateDateDaoTao"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.ddMMyyyyHHmmss;
            this.MainGridViewDaoTao.Columns["UpdateDateDaoTao"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewDaoTao.Columns["UpdateDateDaoTao"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.ddMMyyyyHHmmss;
            this.MainGridViewDaoTao.Columns["Thang_BD"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewDaoTao.Columns["Thang_BD"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.MMyyyy;
            this.MainGridViewDaoTao.Columns["Thang_KT"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewDaoTao.Columns["Thang_KT"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.MMyyyy;

            UI.Grid.ApplyDefault(dgThanNhan, false);

            this.MainGridViewGiaDinh.Columns["CreateDateThanNhan"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewGiaDinh.Columns["CreateDateThanNhan"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.ddMMyyyyHHmmss;
            this.MainGridViewGiaDinh.Columns["UpdateDateThanNhan"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewGiaDinh.Columns["UpdateDateThanNhan"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.ddMMyyyyHHmmss;

            UI.Grid.ApplyDefault(dgKhac, false);

            this.MainGridViewKhac.Columns["CreateDateKhac"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewKhac.Columns["CreateDateKhac"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.ddMMyyyyHHmmss;
            this.MainGridViewKhac.Columns["UpdateDateKhac"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewKhac.Columns["UpdateDateKhac"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.ddMMyyyyHHmmss;
            this.MainGridViewKhac.Columns["Thang_SK"].DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
            this.MainGridViewKhac.Columns["Thang_SK"].DisplayFormat.FormatString = MyConst.FORMAT_DATETIME.MMyyyy;


        }

        /// <summary>
        /// Hàm tải dữ liệu danh mục từ điển lên các Combobox
        /// </summary>
        private void FillDataToControls()
        {
            FillDataToLookUp(cboLan_NLuong, MyConst.TD.NangLuong.Ma, SelectedDauMoiID);
            FillDataToLookUp(cboDan_Toc_T, MyConst.TD.DanToc.Ma, SelectedDauMoiID);
            FillDataToLookUp(cboTon_Giao_T, MyConst.TD.TonGiao.Ma, SelectedDauMoiID);

            FillDataToLookUp(cboCHQL, MyConst.TD.CHQLLLCT.Ma, SelectedDauMoiID);
            FillDataToLookUp(cboLLCT, MyConst.TD.CHQLLLCT.Ma, SelectedDauMoiID);
            FillDataToLookUp(cboLoai_SKhoe, MyConst.TD.SucK.Ma, SelectedDauMoiID);
            FillDataToLookUp(cboThuong_T_T, MyConst.TD.ThuongT.Ma, SelectedDauMoiID);
            FillDataToLookUp(cboLoai_NO_T, MyConst.TD.LoaiNha.Ma, SelectedDauMoiID);
            FillDataToLookUp(cboNguon_GO_T, MyConst.TD.NguonGoc.Ma, SelectedDauMoiID);
            FillDataToLookUp(cboHuong_SD, MyConst.TD.SuDung.Ma, SelectedDauMoiID);

            FillDataToLookUp(cboBan_Than_T, MyConst.TD.TP.Ma, SelectedDauMoiID);
            FillDataToLookUp(cboGia_Dinh_T, MyConst.TD.TP.Ma, SelectedDauMoiID);
            FillDataToLookUp(cboMa_Ban_Than_VC, MyConst.TD.TP.Ma, SelectedDauMoiID);
            FillDataToLookUp(cboMa_Gia_Dinh_VC, MyConst.TD.TP.Ma, SelectedDauMoiID);

            FillDataToLookUp(cboCap_Bac, MyConst.TD.Cap.Ma, SelectedDauMoiID);
            FillDataToLookUp(cboLoai_CBo, MyConst.TD.LoaiCB.Ma, SelectedDauMoiID);
            FillDataToLookUp(cboBinh_Chung, MyConst.TD.BinhC.Ma, SelectedDauMoiID);
            FillDataToLookUp(cboNguon_VDN, MyConst.TD.Nguon.Ma, SelectedDauMoiID);
            FillDataToLookUp(cboVan_Hoa, MyConst.TD.VanHoa.Ma, SelectedDauMoiID);
            FillDataToLookUp(cboHocHam, MyConst.TD.HocHam.Ma, SelectedDauMoiID);
            FillDataToLookUp(cboHocVi, MyConst.TD.HocVi.Ma, SelectedDauMoiID);
            FillDataToLookUp(cboLy_Do_Ra, MyConst.TD.LDo_Giam.Ma, SelectedDauMoiID);
        }
        //Kiểm tra xem user đang đăng nhập có quyền xem, thêm, sửa, xóa hay không?
        //Nếu false có nghĩa là không có bất cứu quyền gì.
        private bool Permision()
        {
            try
            {

                return true;
            }
            catch (Exception _ex)
            {
                ShowErrorMessage(_ex);
                return false;
            }
        }

        //Nơi tải dữ liệu từ bảng tblCanBo lên form khi sự kiện gửi lên là update
        private void BindDataToControl()
        {

            try
            {
                if (Action == MyConst.ACTION.Insert) return;

                List<SqlParameter> arrParameters = new List<SqlParameter>();

                arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));

                DataTable temDT = SqlHelper.ExecuteDataTable(CommandType.Text, "Select * From tblCanBo Where Khoa=@Khoa And DauMoiID='" + SelectedDauMoiID + "' ", arrParameters);

                #region BindData
                //  Bindata to Ảnh
                if (temDT.Rows[0]["Picture"].ToString().Length > 0)
                {
                    try
                    {
                        System.IO.MemoryStream ms1 = new System.IO.MemoryStream((Byte[])temDT.Rows[0]["Picture"]);
                        picImage.Image = Image.FromStream(ms1);
                    }
                    catch { }
                }

                MySetValueCanBo(temDT, txtHoTen_KS);

                MySetValueCanBo(temDT, txtBac_Luong);
                MySetValueCanBo(temDT, txtBenh_Chi_T);
                MySetValueCanBo(temDT, txtBiDanh);
                MySetValueCanBo(temDT, cboBinh_Chung);
                MySetValueCanBo(temDT, cboCap_Bac);
                MySetValueCanBo(temDT, cboCHQL);
                MySetValueCanBo(temDT, txtChuc_Kiem);
                MySetValueCanBo(temDT, txtChuc_Vu);
                MySetValueCanBo(temDT, txtCMNV);
                MySetValueCanBo(temDT, txtCVu_Dang_T);
                MySetValueCanBo(temDT, txtCVu_DThe_T);
                MySetValueCanBo(temDT, cboDan_Toc_T);
                MySetValueCanBo(temDT, txtDanhHieu);
                MySetValueCanBo(temDT, txtDia_Chi);
                MySetValueCanBo(temDT, txtDon_Vi_CT); txtDon_Vi_CT.Text = MyCommon.GetTuDienCapTren(MyConst.TD.BoPhan.Ma, txtDon_Vi_CT.Tag, SelectedDauMoiID);
                MySetValueCanBo(temDT, txtDTich_NO);

                MySetValueCanBo(temDT, cboBan_Than_T);
                MySetValueCanBo(temDT, cboGia_Dinh_T);

                cboGioi_Tinh.EditValue = temDT.Rows[0]["Gioi_Tinh"];
                MySetValueCanBo(temDT, txtHeSoLuong);
                MySetValueCanBo(temDT, cboHocHam);
                MySetValueCanBo(temDT, cboHocVi);
                MySetValueCanBo(temDT, txtHoTen_KS);
                txtHoVaTen.Text = temDT.Rows[0]["Ho"] + " " + temDT.Rows[0]["Dem"] + " " + temDT.Rows[0]["Ten"];
                MySetValueCanBo(temDT, cboHuong_SD);
                MySetValueCanBo(temDT, txtKhoi_CTac);
                MySetValueCanBo(temDT, cboLan_NLuong);
                MySetValueCanBo(temDT, cboLLCT);
                MySetValueCanBo(temDT, cboLoai_CBo);
                MySetValueCanBo(temDT, cboLoai_NO_T);
                MySetValueCanBo(temDT, cboLoai_SKhoe);
                MySetValueCanBo(temDT, cboLy_Do_Ra);
                MySetValueCanBo(temDT, txtLy_Do_Vao);
                MySetValueCanBo(temDT, txtMuc_Luong);
                MySetValueCanBo(temDT, txtNgay_Ra);
                MySetValueCanBo(temDT, txtNgach_Luong);
                MySetValueCanBo(temDT, txtNganh_CTac);
                MySetValueCanBo(temDT, txtNgay_CDCT);
                MySetValueCanBo(temDT, txtNgay_Sinh);
                MySetValueCanBo(temDT, txtNgay_Vao);
                MySetValueCanBo(temDT, txtNgay_VDang);
                MySetValueCanBo(temDT, cboNguon_GO_T);
                MySetValueCanBo(temDT, cboNguon_VDN);
                MySetValueCanBo(temDT, txtNQuan_HT);
                MySetValueCanBo(temDT, txtNQuan_XP);
                MySetValueCanBo(temDT, txtSo_Hieu_SQ);
                MySetValueCanBo(temDT, txtSo_Hieu_QN);
                MySetValueCanBo(temDT, txtTen_Khac);
                MySetValueCanBo(temDT, txtThang_BC);
                MySetValueCanBo(temDT, txtThang_CBac);

                MySetValueCanBo(temDT, txtThang_CM);
                MySetValueCanBo(temDT, txtThang_CVu);
                MySetValueCanBo(temDT, txtThang_Doan);
                MySetValueCanBo(temDT, txtThang_NL);
                MySetValueCanBo(temDT, txtThang_NNgu);
                MySetValueCanBo(temDT, txtThang_TNgu);
                MySetValueCanBo(temDT, txtThang_XNgu);
                MySetValueCanBo(temDT, cboThuong_T_T);
                MySetValueCanBo(temDT, cboTon_Giao_T);
                MySetValueCanBo(temDT, txtTQuan_HT);
                MySetValueCanBo(temDT, txtTQuan_XP);
                MySetValueCanBo(temDT, cboVan_Hoa);


                #endregion BindData

                BindDataToGridTieng();

                BindDataToTrichNgang63();

                BindDataToGridQT_CD();

                BindDataToGridQT_CT();

                BindDataToGridQT_DT();

                BindDataToGridQT_DG();

                BindDataToGridThanNhan();

                BindDataToGridKhac();
            }
            catch (Exception _ex)
            {
                ShowErrorMessage(_ex);
            }
        }

        private void BindDataToTrichNgang63()
        {
            List<SqlParameter> arrParameters = new List<SqlParameter>();
            arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));

            DataTable temDT = SqlHelper.ExecuteDataTable(CommandType.Text, "Select T.*, CB.DauMoiID From tblTrichNgang T, tblCanBo CB Where T.Khoa=CB.Khoa And T.Khoa=@Khoa And T.DauMoiID=CB.DauMoiID And CB.DauMoiID='" + SelectedDauMoiID + "' ", arrParameters);
            if (temDT.Rows.Count == 0) return;

            MyCommon.SetValue(temDT, txtDi_NN);
            MyCommon.SetValue(temDT, txtTruoc_CM);
            MyCommon.SetValue(temDT, txtKTCT_BT);
            MyCommon.SetValue(temDT, txtKTCT_VC);
            MyCommon.SetValue(temDT, txtNhan_Xet);
            MyCommon.SetValue(temDT, txtSo_ACE);

            MyCommon.SetValue(temDT, txtSo_AET);
            MyCommon.SetValue(temDT, txtSo_ACE_VC);
            MyCommon.SetValue(temDT, txtSo_AET_VC);
            MyCommon.SetValue(temDT, txtThu_May);
            MyCommon.SetValue(temDT, txtThu_May_VC);

            MyCommon.SetValue(temDT, cboMa_Gia_Dinh_VC);
            MyCommon.SetValue(temDT, cboMa_Ban_Than_VC);

            MyCommon.SetValue(temDT, txtQue_Quan_XPVC);
            MyCommon.SetValue(temDT, txtTru_Quan_XPVC);
            MyCommon.SetValue(temDT, txtQue_Quan_HTVC);
            MyCommon.SetValue(temDT, txtTru_Quan_HTVC);


        }
        /// <summary>
        /// Hàm gán giá trị cho control. Nếu kiểu dữ liệu là Int và control là ButtonEdit thì gán Tag của ButtonEdit là ID, text là tên của danh mục tương ứng.
        /// </summary>
        /// <param name="temDT">Bảng chứa nguồn dữ liệu cho control</param>
        /// <param name="control">Là TextEdit hoặc ButtonEdit của Devexpress</param>
        private void MySetValueCanBo(DataTable temDT, object control)
        {
            try
            {
                if (control.GetType().ToString() == "DevExpress.XtraEditors.TextEdit")
                {
                    TextEdit txtControl = (TextEdit)control;
                    if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "Ngay_Sinh" ||
                        temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "Ngay_Ra")
                    {
                        if (Util.DATETIME.ToDate(temDT.Rows[0][txtControl.Name.Replace("txt", "")]) != null)
                            txtControl.Text = Util.DATETIME.ToDate(temDT.Rows[0][txtControl.Name.Replace("txt", "")]).Value.ToString(MyConst.FORMAT_DATETIME.ddMMyyyy);
                        else
                            txtControl.Text = "";
                    }
                    else if (temDT.Columns[txtControl.Name.Replace("txt", "")].DataType.ToString() == "System.DateTime")
                    {
                        if (Util.DATETIME.ToDate(temDT.Rows[0][txtControl.Name.Replace("txt", "")]) != null)
                            txtControl.Text = Util.DATETIME.ToDate(temDT.Rows[0][txtControl.Name.Replace("txt", "")]).Value.ToString(MyConst.FORMAT_DATETIME.MMyyyy);
                        else
                            txtControl.Text = "";
                    }
                    else
                    {
                        txtControl.Text = temDT.Rows[0][txtControl.Name.Replace("txt", "")].ToString();
                    }
                }
                else if (control.GetType().ToString() == "DevExpress.XtraEditors.LookUpEdit")
                {
                    LookUpEdit cboControl = (LookUpEdit)control;
                    if (temDT.Columns[cboControl.Name.Replace("cbo", "")].DataType.ToString() == "System.Int32")
                        cboControl.EditValue = Util.ToInt(temDT.Rows[0][cboControl.Name.Replace("cbo", "")]);
                    else
                    {
                        cboControl.Text = temDT.Rows[0][cboControl.Name.Replace("cbo", "")].ToString();
                        cboControl.ClosePopup();
                    }
                }
                else
                {
                    ButtonEdit txtControl = (ButtonEdit)control;

                    if (temDT.Columns[txtControl.Name.Replace("txt", "")].DataType.ToString() == "System.Int32")
                    {
                        txtControl.Tag = temDT.Rows[0][txtControl.Name.Replace("txt", "")];
                        if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "Cap_Bac")
                            txtControl.Text = MyCommon.GetTuDien(MyConst.TD.Cap.Ma, txtControl.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                        else if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "Lan_NLuong")
                            txtControl.Text = MyCommon.GetTuDien(MyConst.TD.NangLuong.Ma, txtControl.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                        else if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "Chuc_Vu")
                            txtControl.Text = MyCommon.GetTuDien(MyConst.TD.Chuc.Ma, txtControl.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                        else if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "Don_Vi_CT")
                            txtControl.Text = MyCommon.GetTuDien(MyConst.TD.BoPhan.Ma, txtControl.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                        else if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "Khoi_CTac")
                            txtControl.Text = MyCommon.GetTuDien(MyConst.TD.Khoi_CT.Ma, txtControl.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                        else if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "Binh_Chung")
                            txtControl.Text = MyCommon.GetTuDien(MyConst.TD.BinhC.Ma, txtControl.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                        else if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "Nganh_CTac")
                            txtControl.Text = MyCommon.GetTuDien(MyConst.TD.Ng_CNCT.Ma, txtControl.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                        else if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "Loai_CBo")
                            txtControl.Text = MyCommon.GetTuDien(MyConst.TD.LoaiCB.Ma, txtControl.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                        else if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "Van_Hoa")
                            txtControl.Text = MyCommon.GetTuDien(MyConst.TD.VanHoa.Ma, txtControl.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                        else if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "HocHam")
                            txtControl.Text = MyCommon.GetTuDien(MyConst.TD.HocHam.Ma, txtControl.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                        else if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "HocVi")
                            txtControl.Text = MyCommon.GetTuDien(MyConst.TD.HocVi.Ma, txtControl.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                        else if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "Nguon_VDN")
                            txtControl.Text = MyCommon.GetTuDien(MyConst.TD.Nguon.Ma, txtControl.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                        else if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "NQuan_HT")
                            txtControl.Text = MyCommon.GetTuDien(MyConst.TD.Que.Ma, txtControl.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                        else if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "TQuan_HT")
                            txtControl.Text = MyCommon.GetTuDien(MyConst.TD.Que.Ma, txtControl.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                        else if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "Loai_SKhoe")
                            txtControl.Text = MyCommon.GetTuDien(MyConst.TD.SucK.Ma, txtControl.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                        else if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "Huong_SD")
                            txtControl.Text = MyCommon.GetTuDien(MyConst.TD.SuDung.Ma, txtControl.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                        else if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "Ly_Do_Vao")
                            txtControl.Text = MyCommon.GetTuDien(MyConst.TD.LDo_Tang.Ma, txtControl.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                        else if (temDT.Columns[txtControl.Name.Replace("txt", "")].ColumnName == "Ly_Do_Ra")
                            txtControl.Text = MyCommon.GetTuDien(MyConst.TD.LDo_Giam.Ma, txtControl.Tag, temDT.Rows[0]["DauMoiID"].ToString());

                    }
                    else
                    {
                        txtControl.Text = temDT.Rows[0][txtControl.Name.Replace("txt", "")].ToString();
                    }
                }
            }
            catch { }
        }

        private void BindDataToGridTieng()
        {
            try
            {
                string sql = "Select Case When T.Loai='" + MyConst.LoaiTieng.NgoaiNgu + "' Then N'Ngoại ngữ' Else N'T. Dân tộc' End As Loai, T.AutoID As AutoIDTieng, T.*, T.CreateDate As CreateDateTieng, T.UpdateDate As UpdateDateTieng,dbo.GetUser(T.UserID, CB.DauMoiID) As CapNhatCuoiTieng From tblTieng T, tblCanBo CB Where T.Deleted=0 And T.Khoa=CB.Khoa And T.Khoa=@Khoa  And T.DauMoiID=CB.DauMoiID And CB.DauMoiID='" + SelectedDauMoiID + "' ";

                List<SqlParameter> arrParameters = new List<SqlParameter>();

                arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));

                dgTieng.DataSource = SqlHelper.ExecuteDataTable(CommandType.Text, sql, arrParameters);
            }
            catch (Exception _ex)
            {
                ShowErrorMessage(_ex);
            }
        }

        private void BindDataToGridQT_CD()
        {
            try
            {
                //TODO: Các trường nào là ID thì cần hiện ten lên
                string sql = "Select T.AutoID As AutoIDChienDau, dbo.GetTuDien('" + MyConst.TD.ChienTr.Ma + "', T.Ch_Truong, CB.DauMoiID) As Ch_TruongName,  dbo.GetTuDien('" + MyConst.TD.CVCD.Ma + "', T.CVi_ChDau, CB.DauMoiID) As CVi_ChDauName, T.*, T.CreateDate As CreateDateChienDau, T.UpdateDate As UpdateDateChienDau,dbo.GetUser(T.UserID, CB.DauMoiID) As CapNhatCuoiChienDau From tblQT_CD T, tblCanBo CB Where T.Deleted=0 And T.Khoa=CB.Khoa And T.Khoa=@Khoa  And T.DauMoiID=CB.DauMoiID And CB.DauMoiID='" + SelectedDauMoiID + "' ";
                List<SqlParameter> arrParameters = new List<SqlParameter>();

                arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));

                dgQT_CD.DataSource = SqlHelper.ExecuteDataTable(CommandType.Text, sql, arrParameters);
            }
            catch (Exception _ex)
            {
                ShowErrorMessage(_ex);
            }
        }

        private void BindDataToGridQT_CT()
        {
            try
            {
                string sql = "Select T.AutoID As AutoIDCongTac, T.*, T.CreateDate As CreateDateCongTac, T.UpdateDate As UpdateDateCongTac,dbo.GetUser(T.UserID, CB.DauMoiID) As CapNhatCuoiCongTac From tblQT_CT T, tblCanBo CB Where T.Deleted=0 And T.Khoa=CB.Khoa And T.Khoa=@Khoa  And T.DauMoiID=CB.DauMoiID And CB.DauMoiID='" + SelectedDauMoiID + "' ";
                List<SqlParameter> arrParameters = new List<SqlParameter>();

                arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));

                dgQT_CT.DataSource = SqlHelper.ExecuteDataTable(CommandType.Text, sql, arrParameters);
            }
            catch (Exception _ex)
            {
                ShowErrorMessage(_ex);
            }
        }

        private void BindDataToGridQT_DT()
        {
            try
            {
                string sql = "Select T.AutoID As AutoIDDaoTao, T.*, dbo.GetTuDien('" + MyConst.TD.LoaiHinh.Ma + "', T.Loai_Hinh, CB.DauMoiID) As TenLoai_Hinh, dbo.GetTuDien('" + MyConst.TD.CapHoc.Ma + "', T.Cap_Hoc, CB.DauMoiID) As TenCap_Hoc, dbo.GetTuDien('" + MyConst.TD.Nuoc.Ma + "', T.Ten_Nuoc, CB.DauMoiID) As TenTen_Nuoc, dbo.GetTuDien('" + MyConst.TD.Truong.Ma + "', T.Ten_Co_So, CB.DauMoiID) As TenTen_Co_So, dbo.GetTuDien('" + MyConst.TD.Ng_CNDT.Ma + "', T.CNganh_DT, CB.DauMoiID) As TenCNganh_DT, T.CreateDate As CreateDateDaoTao, T.UpdateDate As UpdateDateDaoTao,dbo.GetUser(T.UserID, CB.DauMoiID) As CapNhatCuoiDaoTao From tblQT_DT T, tblCanBo CB Where T.Deleted=0 And T.Khoa=CB.Khoa And T.Khoa=@Khoa  And T.DauMoiID=CB.DauMoiID And CB.DauMoiID='" + SelectedDauMoiID + "' ";
                List<SqlParameter> arrParameters = new List<SqlParameter>();

                arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));

                dgQT_DT.DataSource = SqlHelper.ExecuteDataTable(CommandType.Text, sql, arrParameters);
            }
            catch (Exception _ex)
            {
                ShowErrorMessage(_ex);
            }
        }

        private void BindDataToGridQT_DG()
        {
            try
            {
                string sql = "Select T.AutoID As AutoIDSuKien, T.*,  dbo.GetTuDien('" + MyConst.TD.SK_DGia.Ma + "', T.SKien_DGia, CB.DauMoiID) As TenSKien_DGia, T.CreateDate As CreateDateSuKien, T.UpdateDate As UpdateDateSuKien,dbo.GetUser(T.UserID, CB.DauMoiID) As CapNhatCuoiSuKien From tblQT_DG T, tblCanBo CB Where T.Deleted=0 And T.Khoa=CB.Khoa And T.Khoa=@Khoa  And T.DauMoiID=CB.DauMoiID And CB.DauMoiID='" + SelectedDauMoiID + "' ";
                List<SqlParameter> arrParameters = new List<SqlParameter>();

                arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));

                dgQT_DG.DataSource = SqlHelper.ExecuteDataTable(CommandType.Text, sql, arrParameters);
            }
            catch (Exception _ex)
            {
                ShowErrorMessage(_ex);
            }
        }

        private void BindDataToGridThanNhan()
        {
            try
            {
                string sql = "Select T.AutoID As AutoIDThanNhan, T.*, T.Ghi_Chu As ThanNhanGhi_Chu,  dbo.GetTuDien('" + MyConst.TD.QuanHe.Ma + "', T.Quan_He, CB.DauMoiID) As TenQuan_He, T.CreateDate As CreateDateThanNhan, T.UpdateDate As UpdateDateThanNhan,dbo.GetUser(T.UserID, CB.DauMoiID) As CapNhatCuoiThanNhan From tblThanNhan T, tblCanBo CB Where T.Deleted=0 And T.Khoa=CB.Khoa And T.Khoa=@Khoa  And T.DauMoiID=CB.DauMoiID And CB.DauMoiID='" + SelectedDauMoiID + "' ";
                List<SqlParameter> arrParameters = new List<SqlParameter>();

                arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));

                dgThanNhan.DataSource = SqlHelper.ExecuteDataTable(CommandType.Text, sql, arrParameters);
            }
            catch (Exception _ex)
            {
                ShowErrorMessage(_ex);
            }
        }

        private void BindDataToGridKhac()
        {
            try
            {
                string sql = "Select T.AutoID As AutoIDKhac, T.*, T.Noi_Dung As Noi_DungKhac, T.CreateDate As CreateDateKhac, T.UpdateDate As UpdateDateKhac,dbo.GetUser(T.UserID, CB.DauMoiID) As CapNhatCuoiKhac From tblKhac T, tblCanBo CB Where T.Deleted=0 And T.Khoa=CB.Khoa And T.Khoa=@Khoa  And T.DauMoiID=CB.DauMoiID And CB.DauMoiID='" + SelectedDauMoiID + "' ";
                List<SqlParameter> arrParameters = new List<SqlParameter>();

                arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));

                dgKhac.DataSource = SqlHelper.ExecuteDataTable(CommandType.Text, sql, arrParameters);
            }
            catch (Exception _ex)
            {
                ShowErrorMessage(_ex);
            }
        }


        private void btnThoat_Click(object sender, EventArgs e)
        {
            try
            {
                this.DialogResult = DialogResult.Cancel;
                this.Close();
            }
            catch (Exception _ex)
            {
                ShowErrorMessage(_ex);
            }
        }

        private void btnLuu_Click(object sender, EventArgs e)
        {
            SqlTransaction MyTran = SqlHelper.BeginTransaction();
            try
            {
                #region sqlCanBo
                string sqlCanBo = "";
                if (Action == MyConst.ACTION.Insert)
                {
                    #region Insert
                    //Set SelectedKhoa

                    sqlCanBo = "INSERT INTO  tblCanBo(DauMoiID, Khoa, So_Hieu_SQ, So_Hieu_QN, HoTen_KS " +
                                                   ", BiDanh, Ho, Dem, Ten, Ten_Khac, Cap_Bac, Thang_CBac " +
                                                   ", Lan_NLuong, HeSoLuong, Bac_Luong, Muc_Luong, LuongChinh, Thang_NL " +
                                                   ", Chuc_Vu, Thang_CVu, Chuc_Kiem, Dung_CVCT, Loai_DV, Don_Vi_CT " +
                                                   ", Khoi_CTac, Ngay_Sinh, Gioi_Tinh, Binh_Chung, Nganh_CTac, Dan_Toc_T " +
                                                   ", Ton_Giao_T, Loai_CBo, Van_Hoa, CHQL, LLCT, CMNV, HocHam, HocVi, DanhHieu " +
                                                   ", Nguon_VDN, Gia_Dinh_T, Ban_Than_T, Ngay_VDang, Ngay_CDCT, CVu_Dang_T " +
                                                   ", CVu_DThe_T, Thang_Doan, Thang_CM, Thang_BC, Thang_NNgu, Thang_XNgu " +
                                                   ", Thang_TNgu, NQuan_HT, NQuan_XP, TQuan_HT, TQuan_XP, Loai_No_T " +
                                                   ", DTich_No, Nguon_Go_T, Dia_Chi, Loai_SKhoe, Benh_Chi_T, Thuong_T_T " +
                                                   ", Huong_SD, Ly_Do_Vao, Ly_Do_Ra, Ngay_Vao, Ngay_Ra, Cap_Nhat_C " +
                                                   ", Status, Ngach_Luong, Picture, Deleted, ChuyenRa " +
                                                   ", UserID, DauMoi_ID, CreateDate) " +
                                        "VALUES (@DauMoiID, @Khoa, @So_Hieu_SQ, @So_Hieu_QN, @HoTen_KS " +
                                                   ", @BiDanh, @Ho, @Dem, @Ten, @Ten_Khac, @Cap_Bac, @Thang_CBac " +
                                                   ", @Lan_NLuong, @HeSoLuong, @Bac_Luong, @Muc_Luong, @LuongChinh, @Thang_NL " +
                                                   ", @Chuc_Vu, @Thang_CVu, @Chuc_Kiem, @Dung_CVCT, @Loai_DV, @Don_Vi_CT " +
                                                   ", @Khoi_CTac, @Ngay_Sinh, @Gioi_Tinh, @Binh_Chung, @Nganh_CTac, @Dan_Toc_T " +
                                                   ", @Ton_Giao_T, @Loai_CBo, @Van_Hoa, @CHQL, @LLCT, @CMNV, @HocHam, @HocVi, @DanhHieu " +
                                                   ", @Nguon_VDN, @Gia_Dinh_T, @Ban_Than_T, @Ngay_VDang, @Ngay_CDCT, @CVu_Dang_T " +
                                                   ", @CVu_DThe_T, @Thang_Doan, @Thang_CM, @Thang_BC, @Thang_NNgu, @Thang_XNgu " +
                                                   ", @Thang_TNgu, @NQuan_HT, @NQuan_XP, @TQuan_HT, @TQuan_XP, @Loai_No_T " +
                                                   ", @DTich_No, @Nguon_Go_T, @Dia_Chi, @Loai_SKhoe, @Benh_Chi_T, @Thuong_T_T " +
                                                   ", @Huong_SD, @Ly_Do_Vao, @Ly_Do_Ra, @Ngay_Vao, @Ngay_Ra, @Cap_Nhat_C " +
                                                   ", @Status, @Ngach_Luong, @Picture, @Deleted, @ChuyenRa " +
                                                   ", @UserID, @DauMoi_ID, GetDate()); ";

                    #endregion Insert
                }
                else
                {
                    #region Update
                    sqlCanBo = "UPDATE  tblCanBo " +
                               "SET " +//DauMoiID = @DauMoiID " +
                                  " So_Hieu_SQ = @So_Hieu_SQ " +
                                  ",So_Hieu_QN = @So_Hieu_QN " +
                                  ",HoTen_KS = @HoTen_KS " +
                                  ",BiDanh = @BiDanh " +
                                  ",Ho = @Ho " +
                                  ",Dem = @Dem " +
                                  ",Ten = @Ten " +
                        //",Ten_Viet = @Ten_Viet " +
                                  ",Ten_Khac = @Ten_Khac " +
                                  ",Cap_Bac = @Cap_Bac " +
                                  ",Thang_CBac = @Thang_CBac " +
                                  ",Lan_NLuong = @Lan_NLuong " +
                                  ",HeSoLuong = @HeSoLuong " +
                                  ",Bac_Luong = @Bac_Luong " +
                                  ",Muc_Luong = @Muc_Luong " +
                        // ",LuongChinh = @LuongChinh " +
                                  ",Thang_NL = @Thang_NL " +
                                  ",Chuc_Vu = @Chuc_Vu " +
                                  ",Thang_CVu = @Thang_CVu " +
                                  ",Chuc_Kiem = @Chuc_Kiem " +
                                  ",Dung_CVCT = @Dung_CVCT " +
                                  ",Loai_DV = @Loai_DV " +
                                  ",Don_Vi_CT = @Don_Vi_CT " +
                                  ",Khoi_CTac = @Khoi_CTac " +
                                  ",Ngay_Sinh = @Ngay_Sinh " +
                                  ",Gioi_Tinh = @Gioi_Tinh " +
                                  ",Binh_Chung = @Binh_Chung " +
                                  ",Nganh_CTac = @Nganh_CTac " +
                                  ",Dan_Toc_T = @Dan_Toc_T " +
                                  ",Ton_Giao_T = @Ton_Giao_T " +
                                  ",Loai_CBo = @Loai_CBo " +
                                  ",Van_Hoa = @Van_Hoa " +
                                  ",CHQL = @CHQL " +
                                  ",LLCT = @LLCT " +
                                  ",CMNV = @CMNV " +
                                  ",HocHam = @HocHam " +
                                  ",HocVi = @HocVi " +
                                  ",DanhHieu = @DanhHieu " +
                                  ",Nguon_VDN = @Nguon_VDN " +
                                  ",Gia_Dinh_T = @Gia_Dinh_T " +
                                  ",Ban_Than_T = @Ban_Than_T " +
                                  ",Ngay_VDang = @Ngay_VDang " +
                                  ",Ngay_CDCT = @Ngay_CDCT " +
                                  ",CVu_Dang_T = @CVu_Dang_T " +
                                  ",CVu_DThe_T = @CVu_DThe_T " +
                                  ",Thang_Doan = @Thang_Doan " +
                                  ",Thang_CM = @Thang_CM " +
                                  ",Thang_BC = @Thang_BC " +
                                  ",Thang_NNgu = @Thang_NNgu " +
                                  ",Thang_XNgu = @Thang_XNgu " +
                                  ",Thang_TNgu = @Thang_TNgu " +
                                  ",NQuan_HT = @NQuan_HT " +
                                  ",NQuan_XP = @NQuan_XP " +
                                  ",TQuan_HT = @TQuan_HT " +
                                  ",TQuan_XP = @TQuan_XP " +
                                  ",Loai_No_T = @Loai_No_T " +
                                  ",DTich_No = @DTich_No " +
                                  ",Nguon_Go_T = @Nguon_Go_T " +
                                  ",Dia_Chi = @Dia_Chi " +
                                  ",Loai_SKhoe = @Loai_SKhoe " +
                                  ",Benh_Chi_T = @Benh_Chi_T " +
                                  ",Thuong_T_T = @Thuong_T_T " +
                                  ",Huong_SD = @Huong_SD " +
                                  ",Ly_Do_Vao = @Ly_Do_Vao " +
                                  ",Ly_Do_Ra = @Ly_Do_Ra " +
                                  ",Ngay_Vao = @Ngay_Vao " +
                                  ",Ngay_Ra = @Ngay_Ra " +
                                  ",Cap_Nhat_C = @Cap_Nhat_C " +
                        //",Status = @Status " +
                                  ",Ngach_Luong = @Ngach_Luong " +
                                  ",Picture = @Picture " +
                        //",Deleted = @Deleted " +
                                ",ChuyenRa = @ChuyenRa " +
                                  ",UserID = @UserID " +
                                  ",DauMoi_ID = @DauMoi_ID " +
                                  ",UpdateDate = GetDate() " +
                             " WHERE Khoa = @Khoa And DauMoiID='" + SelectedDauMoiID + "' And Deleted<>1 ";
                    #endregion Update
                }

                #region Parameters
                List<SqlParameter> arrParametersCanBo = new List<SqlParameter>();
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@DauMoiID", SqlDbType.Int, ParameterDirection.Input, SelectedDauMoiID));//thêm dữ liệu cho đầu mối nào
                if (Action == MyConst.ACTION.Insert)
                {
                    //khi tạo khóa cho bản ghi cán bộ, cấp nào đăng nhập sẽ sinh ra khóa từ cấp đó để tránh trùng nhau.
                    SelectedKhoa = MyCommon.CurrentUserDauMoiID + "_" + MyCommon.GetNewCanBoID(MyTran, MyCommon.CurrentUserDauMoiID).ToString();
                }
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@So_Hieu_SQ", SqlDbType.NVarChar, ParameterDirection.Input, txtSo_Hieu_SQ.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@So_Hieu_QN", SqlDbType.NVarChar, ParameterDirection.Input, txtSo_Hieu_QN.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@HoTen_KS", SqlDbType.NVarChar, ParameterDirection.Input, txtHoTen_KS.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@BiDanh", SqlDbType.NVarChar, ParameterDirection.Input, txtBiDanh.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Ho", SqlDbType.NVarChar, ParameterDirection.Input, Util.HOTEN.Ho(txtHoVaTen.Text.Trim())));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Dem", SqlDbType.NVarChar, ParameterDirection.Input, Util.HOTEN.Dem(txtHoVaTen.Text.Trim())));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Ten", SqlDbType.NVarChar, ParameterDirection.Input, Util.HOTEN.Ten(txtHoVaTen.Text.Trim())));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Ten_Khac", SqlDbType.NVarChar, ParameterDirection.Input, txtTen_Khac.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Cap_Bac", SqlDbType.Int, ParameterDirection.Input, GetLong(cboCap_Bac)));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Thang_CBac", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(txtThang_CBac.Text.Trim())));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Lan_NLuong", SqlDbType.Int, ParameterDirection.Input, GetLong(cboLan_NLuong)));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@HeSoLuong", SqlDbType.Float, ParameterDirection.Input, GetDouble(txtHeSoLuong)));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Bac_Luong", SqlDbType.Float, ParameterDirection.Input, GetDouble(txtBac_Luong)));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Muc_Luong", SqlDbType.Float, ParameterDirection.Input, GetDouble(txtMuc_Luong)));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@LuongChinh", SqlDbType.Float, ParameterDirection.Input, 0));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Thang_NL", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(txtThang_NL.Text.Trim())));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Chuc_Vu", SqlDbType.Int, ParameterDirection.Input, txtChuc_Vu.Tag));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Thang_CVu", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(txtThang_CVu.Text.Trim())));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Chuc_Kiem", SqlDbType.NVarChar, ParameterDirection.Input, txtChuc_Kiem.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Dung_CVCT", SqlDbType.NVarChar, ParameterDirection.Input, ""));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Loai_DV", SqlDbType.Int, ParameterDirection.Input, null));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Don_Vi_CT", SqlDbType.Int, ParameterDirection.Input, txtDon_Vi_CT.Tag));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Khoi_CTac", SqlDbType.Int, ParameterDirection.Input, txtKhoi_CTac.Tag));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Ngay_Sinh", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromStringVN(txtNgay_Sinh.Text.Trim())));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Gioi_Tinh", SqlDbType.NVarChar, ParameterDirection.Input, cboGioi_Tinh.SelectedItem.ToString()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Binh_Chung", SqlDbType.Int, ParameterDirection.Input, GetLong(cboBinh_Chung)));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Nganh_CTac", SqlDbType.Int, ParameterDirection.Input, txtNganh_CTac.Tag));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Dan_Toc_T", SqlDbType.NVarChar, ParameterDirection.Input, cboDan_Toc_T.Text));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Ton_Giao_T", SqlDbType.NVarChar, ParameterDirection.Input, cboTon_Giao_T.Text));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Loai_CBo", SqlDbType.Int, ParameterDirection.Input, GetLong(cboLoai_CBo)));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Van_Hoa", SqlDbType.Int, ParameterDirection.Input, GetLong(cboVan_Hoa)));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@CHQL", SqlDbType.NVarChar, ParameterDirection.Input, cboCHQL.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@LLCT", SqlDbType.NVarChar, ParameterDirection.Input, cboLLCT.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@CMNV", SqlDbType.NVarChar, ParameterDirection.Input, txtCMNV.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@HocHam", SqlDbType.Int, ParameterDirection.Input, GetLong(cboHocHam)));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@HocVi", SqlDbType.Int, ParameterDirection.Input, GetLong(cboHocVi)));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@DanhHieu", SqlDbType.NVarChar, ParameterDirection.Input, txtDanhHieu.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Nguon_VDN", SqlDbType.Int, ParameterDirection.Input, GetLong(cboNguon_VDN)));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Gia_Dinh_T", SqlDbType.NVarChar, ParameterDirection.Input, cboGia_Dinh_T.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Ban_Than_T", SqlDbType.NVarChar, ParameterDirection.Input, cboBan_Than_T.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Ngay_VDang", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(txtNgay_VDang.Text.Trim())));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Ngay_CDCT", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(txtNgay_CDCT.Text.Trim())));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@CVu_Dang_T", SqlDbType.NVarChar, ParameterDirection.Input, txtCVu_Dang_T.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@CVu_DThe_T", SqlDbType.NVarChar, ParameterDirection.Input, txtCVu_DThe_T.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Thang_Doan", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(txtThang_Doan.Text.Trim())));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Thang_CM", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(txtThang_CM.Text.Trim())));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Thang_BC", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(txtThang_BC.Text.Trim())));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Thang_NNgu", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(txtThang_NNgu.Text.Trim())));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Thang_XNgu", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(txtThang_XNgu.Text.Trim())));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Thang_TNgu", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(txtThang_TNgu.Text.Trim())));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@NQuan_HT", SqlDbType.Int, ParameterDirection.Input, txtNQuan_HT.Tag));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@NQuan_XP", SqlDbType.NVarChar, ParameterDirection.Input, txtNQuan_XP.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@TQuan_HT", SqlDbType.Int, ParameterDirection.Input, txtTQuan_HT.Tag));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@TQuan_XP", SqlDbType.NVarChar, ParameterDirection.Input, txtTQuan_XP.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Loai_No_T", SqlDbType.NVarChar, ParameterDirection.Input, cboLoai_NO_T.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@DTich_No", SqlDbType.Float, ParameterDirection.Input, GetDouble(txtDTich_NO)));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Nguon_Go_T", SqlDbType.NVarChar, ParameterDirection.Input, cboNguon_GO_T.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Dia_Chi", SqlDbType.NVarChar, ParameterDirection.Input, txtDia_Chi.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Loai_SKhoe", SqlDbType.Int, ParameterDirection.Input, GetLong(cboLoai_SKhoe)));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Benh_Chi_T", SqlDbType.NVarChar, ParameterDirection.Input, txtBenh_Chi_T.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Thuong_T_T", SqlDbType.NVarChar, ParameterDirection.Input, cboThuong_T_T.Text.Trim()));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Huong_SD", SqlDbType.Int, ParameterDirection.Input, GetLong(cboHuong_SD)));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Ly_Do_Vao", SqlDbType.Int, ParameterDirection.Input, txtLy_Do_Vao.Tag));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Ly_Do_Ra", SqlDbType.Int, ParameterDirection.Input, GetLong(cboLy_Do_Ra)));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Ngay_Vao", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromStringVN_Nullable(txtNgay_Vao.Text)));

                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Ngay_Ra", SqlDbType.DateTime, ParameterDirection.Input, GetDate(txtNgay_Ra)));

                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Cap_Nhat_C", SqlDbType.NVarChar, ParameterDirection.Input, ""));

                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Status", SqlDbType.NVarChar, ParameterDirection.Input, ""));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Ngach_Luong", SqlDbType.NVarChar, ParameterDirection.Input, txtNgach_Luong.Text.Trim()));

                byte[] arrImage = null;
                if (picImage.Image != null)
                {
                    System.IO.MemoryStream ms = new System.IO.MemoryStream();
                    picImage.Image.Save(ms, picImage.Image.RawFormat);
                    arrImage = ms.GetBuffer();
                    ms.Close();
                }
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Picture", SqlDbType.Image, ParameterDirection.Input, arrImage));

                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@Deleted", SqlDbType.Bit, ParameterDirection.Input, false));

                if (!IsNull(txtNgay_Ra))
                    arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@ChuyenRa", SqlDbType.Bit, ParameterDirection.Input, true));
                else
                    arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@ChuyenRa", SqlDbType.Bit, ParameterDirection.Input, false));

                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@UserID", SqlDbType.Int, ParameterDirection.Input, MyCommon.CurrentUserID));
                arrParametersCanBo.Add(SqlHelper.CreateParameterObject("@DauMoi_ID", SqlDbType.Int, ParameterDirection.Input, MyCommon.CurrentUserDauMoiID));

                #endregion Parameters


                SqlHelper.ExecuteNonQuery(MyTran, CommandType.Text, sqlCanBo, arrParametersCanBo);

                #endregion sqlCanBo



                Action = MyConst.ACTION.Update;
                MyTran.Commit();
                MyCommon.ShowMessageOwner("Lưu thành công", this);
                //ShowInfoMessage("Lưu thành công");
            }
            catch (Exception _ex)
            {
                MyTran.Rollback();
                ShowErrorMessage(_ex);
            }
        }

        #region các sự kiện tìm kiếm từ điển



        private void txtCap_Bac_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.Cap.Ma, MyConst.TD.Cap.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtCap_Bac_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.Cap.Ma, MyConst.TD.Cap.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
        }

        private void txtLan_NLuong_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.NangLuong.Ma, MyConst.TD.NangLuong.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
        }

        private void txtLan_NLuong_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.NangLuong.Ma, MyConst.TD.NangLuong.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtDon_Vi_CT_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.BoPhan.Ma, MyConst.TD.BoPhan.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            txtDon_Vi_CT.Text = MyCommon.GetTuDienCapTren(MyConst.TD.BoPhan.Ma, txtDon_Vi_CT.Tag, SelectedDauMoiID);
            txtChuc_Vu.Tag = null;
            txtChuc_Vu.Text = "";
        }



        private void txtDon_Vi_CT_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                txtDon_Vi_CT_ButtonClick(null, null);
            }
        }

        private void txtChuc_Vu_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
           
        }

        private void txtChuc_Vu_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                txtChuc_Vu_ButtonClick(null, null);
            }
        }

        private void txtDan_Toc_T_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.DanToc.Ma, MyConst.TD.DanToc.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtDan_Toc_T_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.DanToc.Ma, MyConst.TD.DanToc.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtTon_Giao_T_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.TonGiao.Ma, MyConst.TD.TonGiao.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtTon_Giao_T_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.TonGiao.Ma, MyConst.TD.TonGiao.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtNQuan_HT_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.Que.Ma, MyConst.TD.Que.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtNQuan_HT_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.Que.Ma, MyConst.TD.Que.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtTQuan_HT_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.Que.Ma, MyConst.TD.Que.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtTQuan_HT_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.Que.Ma, MyConst.TD.Que.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtGia_Dinh_T_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.TP.Ma, MyConst.TD.TP.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtGia_Dinh_T_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.TP.Ma, MyConst.TD.TP.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtBan_Than_T_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.TP.Ma, MyConst.TD.TP.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtBan_Than_T_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.TP.Ma, MyConst.TD.TP.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtKhoi_CTac_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.Khoi_CT.Ma, MyConst.TD.Khoi_CT.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtKhoi_CTac_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.Khoi_CT.Ma, MyConst.TD.Khoi_CT.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtNganh_CTac_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.Ng_CNCT.Ma, MyConst.TD.Ng_CNCT.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtNganh_CTac_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.Ng_CNCT.Ma, MyConst.TD.Ng_CNCT.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtLoai_CBo_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.LoaiCB.Ma, MyConst.TD.LoaiCB.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtLoai_CBo_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.LoaiCB.Ma, MyConst.TD.LoaiCB.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtBinh_Chung_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.BinhC.Ma, MyConst.TD.BinhC.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtBinh_Chung_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.BinhC.Ma, MyConst.TD.BinhC.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtNguon_VDN_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.Nguon.Ma, MyConst.TD.Nguon.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtNguon_VDN_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.Nguon.Ma, MyConst.TD.Nguon.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtLy_Do_Vao_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.LDo_Tang.Ma, MyConst.TD.LDo_Tang.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtLy_Do_Vao_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.LDo_Tang.Ma, MyConst.TD.LDo_Tang.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtVan_Hoa_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.VanHoa.Ma, MyConst.TD.VanHoa.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtVan_Hoa_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.VanHoa.Ma, MyConst.TD.VanHoa.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtHocHam_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.HocHam.Ma, MyConst.TD.HocHam.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtHocHam_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.HocHam.Ma, MyConst.TD.HocHam.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtHocVi_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.HocVi.Ma, MyConst.TD.HocVi.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtHocVi_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.HocVi.Ma, MyConst.TD.HocVi.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtCHQL_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.CHQLLLCT.Ma, MyConst.TD.CHQLLLCT.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtCHQL_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.CHQLLLCT.Ma, MyConst.TD.CHQLLLCT.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtLLCT_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.CHQLLLCT.Ma, MyConst.TD.CHQLLLCT.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtLLCT_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.CHQLLLCT.Ma, MyConst.TD.CHQLLLCT.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtLoai_SKhoe_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.SucK.Ma, MyConst.TD.SucK.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtLoai_SKhoe_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.SucK.Ma, MyConst.TD.SucK.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtThuong_T_T_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.ThuongT.Ma, MyConst.TD.ThuongT.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtThuong_T_T_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.ThuongT.Ma, MyConst.TD.ThuongT.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtLoai_NO_T_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.LoaiNha.Ma, MyConst.TD.LoaiNha.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtLoai_NO_T_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.LoaiNha.Ma, MyConst.TD.LoaiNha.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtNguon_GO_T_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.NguonGoc.Ma, MyConst.TD.NguonGoc.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtNguon_GO_T_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.NguonGoc.Ma, MyConst.TD.NguonGoc.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtHuong_SD_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.SuDung.Ma, MyConst.TD.SuDung.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtHuong_SD_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.SuDung.Ma, MyConst.TD.SuDung.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtMa_Gia_Dinh_VC_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.TP.Ma, MyConst.TD.TP.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtMa_Gia_Dinh_VC_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.TP.Ma, MyConst.TD.TP.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtMa_Ban_Than_VC_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.TP.Ma, MyConst.TD.TP.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtMa_Ban_Than_VC_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.TP.Ma, MyConst.TD.TP.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        private void txtLy_Do_Ra_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.LDo_Giam.Ma, MyConst.TD.LDo_Giam.Ten);//Sửa mã từ đienr truyền vào cho thích hợp

        }

        private void txtLy_Do_Ra_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.LDo_Giam.Ma, MyConst.TD.LDo_Giam.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }
        }

        #endregion các sự kiện tìm kiếm từ điển

        private void tbnThemTieng_Click(object sender, EventArgs e)
        {
            SqlTransaction MyTran = SqlHelper.BeginTransaction();

            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }
                frmChonTieng ff = new frmChonTieng();
                ff.SelectedDauMoiID = SelectedDauMoiID;
                if (ff.ShowDialog() == DialogResult.OK)
                {
                    string sqlInsert = "Insert Into tblTieng(ID, Khoa, DauMoiID, Loai, NgonNgu_T, Ma_NNgu, Ma_DToc, TrinhDo, ThoiGian, UserID, CreateDate) " +
                                    "Values(@ID, @Khoa, '" + SelectedDauMoiID + "', @Loai, @NgonNgu_T, @Ma_NNgu, @Ma_DToc, @TrinhDo, @ThoiGian, @UserID, GetDate()); ";

                    List<SqlParameter> arrParameters = new List<SqlParameter>();

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));

                    int iID = Util.ToInt(SqlHelper.ExecuteScalar(MyTran, CommandType.Text, "Select Max(ID) From tblTieng Where Khoa=@Khoa ", arrParameters)) + 1;

                    arrParameters.Add(SqlHelper.CreateParameterObject("@ID", SqlDbType.Int, ParameterDirection.Input, iID));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Loai", SqlDbType.Int, ParameterDirection.Input, ff.radLoai.EditValue));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@NgonNgu_T", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtNgonNgu_T.Text.Trim()));
                    if (ff.radLoai.EditValue.ToString() == "1")
                    {
                        arrParameters.Add(SqlHelper.CreateParameterObject("@Ma_NNgu", SqlDbType.Int, ParameterDirection.Input, ff.txtNgonNgu_T.Tag));
                        arrParameters.Add(SqlHelper.CreateParameterObject("@Ma_DToc", SqlDbType.Int, ParameterDirection.Input, null));
                    }
                    else
                    {
                        arrParameters.Add(SqlHelper.CreateParameterObject("@Ma_NNgu", SqlDbType.Int, ParameterDirection.Input, null));
                        arrParameters.Add(SqlHelper.CreateParameterObject("@Ma_DToc", SqlDbType.Int, ParameterDirection.Input, ff.txtNgonNgu_T.Tag));
                    }
                    arrParameters.Add(SqlHelper.CreateParameterObject("@TrinhDo", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtTrinhDo.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@ThoiGian", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtThoiGian.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@UserID", SqlDbType.Int, ParameterDirection.Input, MyCommon.CurrentUserID));

                    SqlHelper.ExecuteNonQuery(MyTran, CommandType.Text, sqlInsert, arrParameters);

                }
                MyTran.Commit();
                MyCommon.ShowMessage("Cập nhật thành công");
                BindDataToGridTieng();
            }
            catch (Exception _ex)
            {
                MyTran.Rollback();
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnSuaTieng_Click(object sender, EventArgs e)
        {

            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }

                if (MainGridViewTieng.RowCount == 0)
                {
                    MyCommon.ShowDialogMessage("Bạn cần chọn một nội dung để sửa");
                    return;
                }


                frmChonTieng ff = new frmChonTieng();
                ff.SelectedDauMoiID = SelectedDauMoiID;

                List<SqlParameter> arrParameters = new List<SqlParameter>();


                DataTable temDT = SqlHelper.ExecuteDataTable(CommandType.Text, "Select * From tblTieng Where AutoID=" + GetString(dgTieng, "AutoIDTieng"), arrParameters);

                ff.radLoai.EditValue = Util.ToInt(temDT.Rows[0]["Loai"]);
                if (ff.radLoai.EditValue.ToString() == "1")
                    ff.txtNgonNgu_T.Tag = temDT.Rows[0]["Ma_NNgu"].ToString();
                else
                    ff.txtNgonNgu_T.Tag = temDT.Rows[0]["Ma_DToc"].ToString();

                ff.txtNgonNgu_T.Text = temDT.Rows[0]["NgonNgu_T"].ToString();

                MyCommon.SetValueMMyyyy(temDT, ff.txtThoiGian);
                MyCommon.SetValue(temDT, ff.txtTrinhDo);

                if (ff.ShowDialog() == DialogResult.OK)
                {
                    string sqlUpdate = "Update tblTieng Set Loai=@Loai, NgonNgu_T=@NgonNgu_T, Ma_NNgu=@Ma_NNgu, Ma_DToc=@Ma_DToc, TrinhDo=@TrinhDo, ThoiGian=@ThoiGian, UserID=@UserID, UpdateDate=GetDate() " +
                                    "Where AutoID=" + GetString(dgTieng, "AutoIDTieng");


                    arrParameters.Add(SqlHelper.CreateParameterObject("@Loai", SqlDbType.Int, ParameterDirection.Input, ff.radLoai.EditValue));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@NgonNgu_T", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtNgonNgu_T.Text.Trim()));
                    if (ff.radLoai.EditValue.ToString() == "1")
                    {
                        arrParameters.Add(SqlHelper.CreateParameterObject("@Ma_NNgu", SqlDbType.Int, ParameterDirection.Input, ff.txtNgonNgu_T.Tag));
                        arrParameters.Add(SqlHelper.CreateParameterObject("@Ma_DToc", SqlDbType.Int, ParameterDirection.Input, null));
                    }
                    else
                    {
                        arrParameters.Add(SqlHelper.CreateParameterObject("@Ma_NNgu", SqlDbType.Int, ParameterDirection.Input, null));
                        arrParameters.Add(SqlHelper.CreateParameterObject("@Ma_DToc", SqlDbType.Int, ParameterDirection.Input, ff.txtNgonNgu_T.Tag));
                    }
                    arrParameters.Add(SqlHelper.CreateParameterObject("@TrinhDo", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtTrinhDo.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@ThoiGian", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtThoiGian.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@UserID", SqlDbType.Int, ParameterDirection.Input, MyCommon.CurrentUserID));

                    SqlHelper.ExecuteNonQuery(CommandType.Text, sqlUpdate, arrParameters);

                }

                BindDataToGridTieng();
            }
            catch (Exception _ex)
            {
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnXoaTieng_Click(object sender, EventArgs e)
        {
            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }

                if (MainGridViewTieng.RowCount == 0)
                {
                    MyCommon.ShowDialogMessage("Bạn cần chọn một nội dung để xóa");
                    return;
                }


                if (ShowConfirmMessage("Bạn có chắc chắn xóa?") == DialogResult.Yes)
                {
                    string sqlUpdate = "Update tblTieng Set Deleted=1 " +
                                    "Where AutoID=" + GetString(dgTieng, "AutoIDTieng");

                    SqlHelper.ExecuteNonQuery(CommandType.Text, sqlUpdate);

                }

                BindDataToGridTieng();
            }
            catch (Exception _ex)
            {
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnLuuTN63_Click(object sender, EventArgs e)
        {
            SqlTransaction MyTran = SqlHelper.BeginTransaction();

            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }

                string TN63Action = MyConst.ACTION.Insert;
                string sqlTN63 = "";
                #region Kiểm tra xem tồn tại TN63 chưa
                sqlTN63 = "Select Count(*) From tblTrichNgang Where Khoa=@Khoa And DauMoiID='" + SelectedDauMoiID + "' ";//quan heej 1-1


                List<SqlParameter> arrParameters = new List<SqlParameter>();
                arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));

                int iTN63 = Util.ToInt(SqlHelper.ExecuteScalar(MyTran, CommandType.Text, sqlTN63, arrParameters));

                if (iTN63 > 0) TN63Action = MyConst.ACTION.Update;

                #endregion Kiểm tra xem tồn tại TN63 chưa

                if (TN63Action == MyConst.ACTION.Insert)
                {
                    sqlTN63 = "Insert Into tblTrichNgang(Khoa, DauMoiID, Di_NN, Truoc_CM, KTCT_BT, KTCT_VC, Nhan_Xet, So_ACE, So_AET, So_ACE_VC, So_AET_VC, Thu_May, Thu_May_VC, Ma_Gia_Dinh_VC, Ma_Ban_Than_VC, Que_Quan_XPVC, Tru_Quan_XPVC, Que_Quan_HTVC, Tru_Quan_HTVC, Ghi_Them, Ngay_Trich, Can_Cu_Trich, UserID, CreateDate) " +
                                "Values(@Khoa, '" + SelectedDauMoiID + "', @Di_NN, @Truoc_CM, @KTCT_BT, @KTCT_VC, @Nhan_Xet, @So_ACE, @So_AET, @So_ACE_VC, @So_AET_VC, @Thu_May, @Thu_May_VC, @Ma_Gia_Dinh_VC, @Ma_Ban_Than_VC, @Que_Quan_XPVC, @Tru_Quan_XPVC, @Que_Quan_HTVC, @Tru_Quan_HTVC, @Ghi_Them, @Ngay_Trich, @Can_Cu_Trich, @UserID, GetDate()) ";
                }
                else
                {
                    sqlTN63 = "Update tblTrichNgang Set Di_NN=@Di_NN, Truoc_CM=@Truoc_CM, KTCT_BT=@KTCT_BT, KTCT_VC=@KTCT_VC, Nhan_Xet=@Nhan_Xet, So_ACE=@So_ACE, So_AET=@So_AET, So_ACE_VC=@So_ACE_VC, So_AET_VC=@So_AET_VC, Thu_May=@Thu_May, Thu_May_VC=@Thu_May_VC, Ma_Gia_Dinh_VC=@Ma_Gia_Dinh_VC, Ma_Ban_Than_VC=@Ma_Ban_Than_VC, Que_Quan_XPVC=@Que_Quan_XPVC, Tru_Quan_XPVC=@Tru_Quan_XPVC, Que_Quan_HTVC=@Que_Quan_HTVC, Tru_Quan_HTVC=@Tru_Quan_HTVC, Ghi_Them=@Ghi_Them, Ngay_Trich=@Ngay_Trich, Can_Cu_Trich=@Can_Cu_Trich, UserID=@UserID, UpdateDate=GetDate() Where Khoa=@Khoa And DauMoiID='" + SelectedDauMoiID + "' ";
                }
                #region AddParameters

                arrParameters.Add(SqlHelper.CreateParameterObject("@Di_NN", SqlDbType.NVarChar, ParameterDirection.Input, txtDi_NN.Text.Trim()));
                arrParameters.Add(SqlHelper.CreateParameterObject("@Truoc_CM", SqlDbType.NVarChar, ParameterDirection.Input, txtTruoc_CM.Text.Trim()));
                arrParameters.Add(SqlHelper.CreateParameterObject("@KTCT_BT", SqlDbType.NVarChar, ParameterDirection.Input, txtKTCT_BT.Text.Trim()));

                arrParameters.Add(SqlHelper.CreateParameterObject("@KTCT_VC", SqlDbType.NVarChar, ParameterDirection.Input, txtKTCT_VC.Text.Trim()));
                arrParameters.Add(SqlHelper.CreateParameterObject("@Nhan_Xet", SqlDbType.NVarChar, ParameterDirection.Input, txtNhan_Xet.Text.Trim()));
                arrParameters.Add(SqlHelper.CreateParameterObject("@So_ACE", SqlDbType.Int, ParameterDirection.Input, Util.ToInt(txtSo_ACE.Text)));
                arrParameters.Add(SqlHelper.CreateParameterObject("@So_AET", SqlDbType.Int, ParameterDirection.Input, Util.ToInt(txtSo_AET.Text)));
                arrParameters.Add(SqlHelper.CreateParameterObject("@So_ACE_VC", SqlDbType.Int, ParameterDirection.Input, Util.ToInt(txtSo_ACE_VC.Text)));
                arrParameters.Add(SqlHelper.CreateParameterObject("@So_AET_VC", SqlDbType.Int, ParameterDirection.Input, Util.ToInt(txtSo_AET_VC.Text)));
                arrParameters.Add(SqlHelper.CreateParameterObject("@Thu_May", SqlDbType.Int, ParameterDirection.Input, Util.ToInt(txtThu_May.Text)));
                arrParameters.Add(SqlHelper.CreateParameterObject("@Thu_May_VC", SqlDbType.Int, ParameterDirection.Input, Util.ToInt(txtThu_May_VC.Text)));
                arrParameters.Add(SqlHelper.CreateParameterObject("@Ma_Gia_Dinh_VC", SqlDbType.Int, ParameterDirection.Input, GetLong(cboMa_Gia_Dinh_VC)));
                arrParameters.Add(SqlHelper.CreateParameterObject("@Ma_Ban_Than_VC", SqlDbType.Int, ParameterDirection.Input, GetLong(cboMa_Ban_Than_VC)));
                arrParameters.Add(SqlHelper.CreateParameterObject("@Que_Quan_XPVC", SqlDbType.NVarChar, ParameterDirection.Input, txtQue_Quan_XPVC.Text.Trim()));
                arrParameters.Add(SqlHelper.CreateParameterObject("@Tru_Quan_XPVC", SqlDbType.NVarChar, ParameterDirection.Input, txtTru_Quan_XPVC.Text.Trim()));
                arrParameters.Add(SqlHelper.CreateParameterObject("@Que_Quan_HTVC", SqlDbType.NVarChar, ParameterDirection.Input, txtQue_Quan_HTVC.Text.Trim()));
                arrParameters.Add(SqlHelper.CreateParameterObject("@Tru_Quan_HTVC", SqlDbType.NVarChar, ParameterDirection.Input, txtTru_Quan_HTVC.Text.Trim()));
                arrParameters.Add(SqlHelper.CreateParameterObject("@Ghi_Them", SqlDbType.NVarChar, ParameterDirection.Input, ""));

                arrParameters.Add(SqlHelper.CreateParameterObject("@Ngay_Trich", SqlDbType.DateTime, ParameterDirection.Input, null));
                arrParameters.Add(SqlHelper.CreateParameterObject("@Can_Cu_Trich", SqlDbType.NVarChar, ParameterDirection.Input, ""));
                arrParameters.Add(SqlHelper.CreateParameterObject("@UserID", SqlDbType.NVarChar, ParameterDirection.Input, MyCommon.CurrentUserID));

                #endregion AddParameters

                SqlHelper.ExecuteNonQuery(MyTran, CommandType.Text, sqlTN63, arrParameters);

                MyTran.Commit();
                MyCommon.ShowMessage("Lưu thành công");
            }
            catch (Exception _ex)
            {
                MyTran.Rollback();
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void txtQue_Quan_HTVC_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.Que.Ma, MyConst.TD.Que.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
        }

        private void txtQue_Quan_HTVC_KeyDown(object sender, KeyEventArgs e)
        {
            DevExpress.XtraEditors.ButtonEdit txtSender = (DevExpress.XtraEditors.ButtonEdit)sender;
            if (IsNull(txtSender)) return;
            if (e.KeyCode == Keys.Enter && txtSender.Text.Substring(txtSender.Text.Length - 1).ToString() == Properties.Settings.Default.QuestionChar) //
            {
                MyCommon.MyTuDien(SelectedDauMoiID, sender, MyConst.TD.Que.Ma, MyConst.TD.Que.Ten);//Sửa mã từ đienr truyền vào cho thích hợp
            }

        }

        private void btnThemQT_CD_Click(object sender, EventArgs e)
        {
            SqlTransaction MyTran = SqlHelper.BeginTransaction();

            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }
                frmCanBoQT_CD ff = new frmCanBoQT_CD();
                ff.SelectedDauMoiID = SelectedDauMoiID;
                if (ff.ShowDialog() == DialogResult.OK)
                {
                    string sqlInsert = "Insert Into tblQT_CD(ID, Khoa, DauMoiID, Ch_Truong, Bat_Dau, Ket_Thuc, CVi_ChDau, Don_Vi, UserID, CreateDate) " +
                                    "Values(@ID, @Khoa, '" + SelectedDauMoiID + "', @Ch_Truong, @Bat_Dau, @Ket_Thuc, @CVi_ChDau, @Don_Vi, @UserID, GetDate()); ";

                    List<SqlParameter> arrParameters = new List<SqlParameter>();

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));

                    int iID = Util.ToInt(SqlHelper.ExecuteScalar(MyTran, CommandType.Text, "Select Max(ID) From tblQT_CD Where Khoa=@Khoa ", arrParameters)) + 1;

                    arrParameters.Add(SqlHelper.CreateParameterObject("@ID", SqlDbType.Int, ParameterDirection.Input, iID));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Ch_Truong", SqlDbType.Int, ParameterDirection.Input, ff.txtCh_Truong.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Bat_Dau", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtBat_Dau.Text.Trim())));

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Ket_Thuc", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtKet_Thuc.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@CVi_ChDau", SqlDbType.Int, ParameterDirection.Input, ff.txtCVi_ChDau.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Don_Vi", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtDon_Vi.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@UserID", SqlDbType.Int, ParameterDirection.Input, MyCommon.CurrentUserID));

                    SqlHelper.ExecuteNonQuery(MyTran, CommandType.Text, sqlInsert, arrParameters);

                }
                MyTran.Commit();
                MyCommon.ShowMessage("Cập nhật thành công");
                BindDataToGridQT_CD();
            }
            catch (Exception _ex)
            {
                MyTran.Rollback();
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnSuaQT_CD_Click(object sender, EventArgs e)
        {
            SqlTransaction MyTran = SqlHelper.BeginTransaction();

            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }
                if (MainGridViewChienDau.RowCount == 0)
                {
                    MyCommon.ShowDialogMessage("Bạn cần chọn một nội dung để sửa");
                    return;
                }

                frmCanBoQT_CD ff = new frmCanBoQT_CD();
                ff.SelectedDauMoiID = SelectedDauMoiID;


                List<SqlParameter> arrParameters = new List<SqlParameter>();
                arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));
                arrParameters.Add(SqlHelper.CreateParameterObject("@ID", SqlDbType.Int, ParameterDirection.Input, GetString(dgQT_CD, "ID")));


                DataTable temDT = SqlHelper.ExecuteDataTable(CommandType.Text, "Select CD.*  From tblQT_CD CD  Where CD.Khoa=@Khoa And CD.ID=@ID And CD.DauMoiID='" + SelectedDauMoiID + "' ", arrParameters);

                ff.txtCh_Truong.Tag = temDT.Rows[0]["Ch_Truong"];
                if (ff.txtCh_Truong.Tag != null)
                {
                    ff.txtCh_Truong.Text = MyCommon.GetTuDien(MyConst.TD.ChienTr.Ma, ff.txtCh_Truong.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                }

                ff.txtCVi_ChDau.Tag = temDT.Rows[0]["Ch_Truong"];
                if (ff.txtCVi_ChDau.Tag != null)
                {
                    ff.txtCVi_ChDau.Text = MyCommon.GetTuDien(MyConst.TD.CVCD.Ma, ff.txtCVi_ChDau.Tag, temDT.Rows[0]["DauMoiID"].ToString());
                }


                MyCommon.SetValueMMyyyy(temDT, ff.txtBat_Dau);
                MyCommon.SetValueMMyyyy(temDT, ff.txtKet_Thuc);
                MyCommon.SetValue(temDT, ff.txtDon_Vi);

                if (ff.ShowDialog() == DialogResult.OK)
                {
                    string sqlUpdateQT_CD = "Update tblQT_CD Set Ch_Truong=@Ch_Truong, Bat_Dau=@Bat_Dau, Ket_Thuc=@Ket_Thuc, CVi_ChDau=@CVi_ChDau, Don_Vi=@Don_Vi, UserID=@UserID, UpdateDate=GetDate() Where Khoa=@Khoa And ID=@ID And DauMoiID='" + SelectedDauMoiID + "' ";

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Ch_Truong", SqlDbType.Int, ParameterDirection.Input, ff.txtCh_Truong.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Bat_Dau", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtBat_Dau.Text.Trim())));

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Ket_Thuc", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtKet_Thuc.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@CVi_ChDau", SqlDbType.Int, ParameterDirection.Input, ff.txtCVi_ChDau.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Don_Vi", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtDon_Vi.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@UserID", SqlDbType.Int, ParameterDirection.Input, MyCommon.CurrentUserID));

                    SqlHelper.ExecuteNonQuery(MyTran, CommandType.Text, sqlUpdateQT_CD, arrParameters);

                }
                MyTran.Commit();
                MyCommon.ShowMessage("Cập nhật thành công");
                BindDataToGridQT_CD();
            }
            catch (Exception _ex)
            {
                MyTran.Rollback();
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnXoaQT_CD_Click(object sender, EventArgs e)
        {
            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }

                if (MainGridViewChienDau.RowCount == 0)
                {
                    MyCommon.ShowDialogMessage("Bạn cần chọn một nội dung để xóa");
                    return;
                }



                if (ShowConfirmMessage("Bạn có chắc chắn xóa?") == DialogResult.Yes)
                {
                    string sqlUpdate = "Update tblQT_CD Set Deleted=1 " +
                                    "Where AutoID=" + GetString(dgQT_CD, "AutoIDChienDau");

                    SqlHelper.ExecuteNonQuery(CommandType.Text, sqlUpdate);

                }

                BindDataToGridQT_CD();
            }
            catch (Exception _ex)
            {
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnThemQT_CT_Click(object sender, EventArgs e)
        {
            SqlTransaction MyTran = SqlHelper.BeginTransaction();

            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }
                frmCanBoQT_CT ff = new frmCanBoQT_CT();
                ff.SelectedDauMoiID = SelectedDauMoiID;
                if (ff.ShowDialog() == DialogResult.OK)
                {
                    string sqlInsert = "Insert Into tblQT_CT(ID, Khoa, DauMoiID, Tu, Den, Chuc_T, Chuc, DonVi_T, DonVi, Cap_T, Cap, TG_Cap, Dang, TG_Dang, UserID, CreateDate) " +
                                    "Values(@ID, @Khoa, '" + SelectedDauMoiID + "', @Tu, @Den, @Chuc_T, @Chuc, @DonVi_T, @DonVi, @Cap_T, @Cap, @TG_Cap, @Dang, @TG_Dang, @UserID, GetDate()) ";

                    List<SqlParameter> arrParameters = new List<SqlParameter>();

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));

                    int iID = Util.ToInt(SqlHelper.ExecuteScalar(MyTran, CommandType.Text, "Select Max(ID) From tblQT_CT Where Khoa=@Khoa ", arrParameters)) + 1;

                    arrParameters.Add(SqlHelper.CreateParameterObject("@ID", SqlDbType.Int, ParameterDirection.Input, iID));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Tu", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtTu.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Den", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtDen.Text.Trim())));

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Chuc_T", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtChuc_T.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Chuc", SqlDbType.Int, ParameterDirection.Input, ff.txtChuc_T.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@DonVi_T", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtDonVi_T.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@DonVi", SqlDbType.Int, ParameterDirection.Input, ff.txtDonVi_T.Tag));

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Cap_T", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtCap_T.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Cap", SqlDbType.Int, ParameterDirection.Input, ff.txtCap_T.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@TG_Cap", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtTG_Cap.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Dang", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtDang.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@TG_Dang", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtTG_Dang.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@UserID", SqlDbType.Int, ParameterDirection.Input, MyCommon.CurrentUserID));

                    SqlHelper.ExecuteNonQuery(MyTran, CommandType.Text, sqlInsert, arrParameters);

                }
                MyTran.Commit();
                MyCommon.ShowMessage("Cập nhật thành công");
                BindDataToGridQT_CT();
            }
            catch (Exception _ex)
            {
                MyTran.Rollback();
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnSuaCongTac_Click(object sender, EventArgs e)
        {
            SqlTransaction MyTran = SqlHelper.BeginTransaction();

            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }
                if (MainGridViewCongTac.RowCount == 0)
                {
                    MyCommon.ShowDialogMessage("Bạn cần chọn một nội dung để sửa");
                    return;
                }

                frmCanBoQT_CT ff = new frmCanBoQT_CT();
                ff.SelectedDauMoiID = SelectedDauMoiID;


                List<SqlParameter> arrParameters = new List<SqlParameter>();
                arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));
                arrParameters.Add(SqlHelper.CreateParameterObject("@ID", SqlDbType.Int, ParameterDirection.Input, GetString(dgQT_CT, "ID")));


                DataTable temDT = SqlHelper.ExecuteDataTable(CommandType.Text, "Select CD.*  From tblQT_CT CD  Where  CD.Khoa=@Khoa And CD.ID=@ID And CD.DauMoiID='" + SelectedDauMoiID + "'", arrParameters);

                MyCommon.SetValueMMyyyy(temDT, ff.txtTu);
                MyCommon.SetValueMMyyyy(temDT, ff.txtDen);
                MyCommon.SetValue(temDT, ff.txtChuc_T);
                MyCommon.SetValue(temDT, ff.txtDang);

                ff.txtChuc_T.Tag = temDT.Rows[0]["Chuc"];

                MyCommon.SetValue(temDT, ff.txtDonVi_T);
                ff.txtDonVi_T.Tag = temDT.Rows[0]["DonVi"];

                MyCommon.SetValue(temDT, ff.txtCap_T);

                ff.txtCap_T.Tag = temDT.Rows[0]["Cap"];

                MyCommon.SetValueMMyyyy(temDT, ff.txtTG_Cap);
                MyCommon.SetValueMMyyyy(temDT, ff.txtTG_Dang);

                if (ff.ShowDialog() == DialogResult.OK)
                {
                    string sqlUpdateQT_CT = "Update tblQT_CT Set  Tu=@Tu, Den=@Den, Chuc_T=@Chuc_T, Chuc=@Chuc, DonVi_T=@DonVi_T, DonVi=@DonVi, Cap_T=@Cap_T, Cap=@Cap, TG_Cap=@TG_Cap, Dang=@Dang, TG_Dang=@TG_Dang , UserID=@UserID, UpdateDate=GetDate() Where Khoa=@Khoa And ID=@ID And DauMoiID='" + SelectedDauMoiID + "' ";

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Tu", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtTu.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Den", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtDen.Text.Trim())));

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Chuc_T", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtChuc_T.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Chuc", SqlDbType.Int, ParameterDirection.Input, ff.txtChuc_T.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@DonVi_T", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtDonVi_T.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@DonVi", SqlDbType.Int, ParameterDirection.Input, ff.txtDonVi_T.Tag));

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Cap_T", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtCap_T.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Cap", SqlDbType.Int, ParameterDirection.Input, ff.txtCap_T.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@TG_Cap", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtTG_Cap.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Dang", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtDang.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@TG_Dang", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtTG_Dang.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@UserID", SqlDbType.Int, ParameterDirection.Input, MyCommon.CurrentUserID));

                    SqlHelper.ExecuteNonQuery(MyTran, CommandType.Text, sqlUpdateQT_CT, arrParameters);

                }
                MyTran.Commit();
                MyCommon.ShowMessage("Cập nhật thành công");
                BindDataToGridQT_CT();
            }
            catch (Exception _ex)
            {
                MyTran.Rollback();
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnXoaCongTac_Click(object sender, EventArgs e)
        {
            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }

                if (MainGridViewCongTac.RowCount == 0)
                {
                    MyCommon.ShowDialogMessage("Bạn cần chọn một nội dung để xóa");
                    return;
                }


                if (ShowConfirmMessage("Bạn có chắc chắn xóa?") == DialogResult.Yes)
                {
                    string sqlUpdate = "Update tblQT_CT Set Deleted=1 " +
                                    "Where AutoID=" + GetString(dgQT_CT, "AutoIDCongTac");

                    SqlHelper.ExecuteNonQuery(CommandType.Text, sqlUpdate);

                }

                BindDataToGridQT_CT();
            }
            catch (Exception _ex)
            {
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btThemQT_DT_Click(object sender, EventArgs e)
        {
            SqlTransaction MyTran = SqlHelper.BeginTransaction();

            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }
                frmCanBoQT_DT ff = new frmCanBoQT_DT();
                ff.SelectedDauMoiID = SelectedDauMoiID;
                if (ff.ShowDialog() == DialogResult.OK)
                {
                    string sqlInsert = "Insert Into tblQT_DT(ID, Khoa, DauMoiID, Loai_Hinh, Cap_Hoc, Ten_Nuoc, Ten_Co_So, CNganh_DT, Thang_BD, Thang_KT, Loai_TN_T, Bang_Cap, Luan_An, Dung_CNCT, UserID, CreateDate) " +
                                    "Values(@ID, @Khoa, '" + SelectedDauMoiID + "', @Loai_Hinh, @Cap_Hoc, @Ten_Nuoc, @Ten_Co_So, @CNganh_DT, @Thang_BD, @Thang_KT, @Loai_TN_T, @Bang_Cap, @Luan_An, @Dung_CNCT, @UserID, GetDate()) ";

                    List<SqlParameter> arrParameters = new List<SqlParameter>();

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));

                    int iID = Util.ToInt(SqlHelper.ExecuteScalar(MyTran, CommandType.Text, "Select Max(ID) From tblQT_DT Where Khoa=@Khoa ", arrParameters)) + 1;

                    arrParameters.Add(SqlHelper.CreateParameterObject("@ID", SqlDbType.Int, ParameterDirection.Input, iID));

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Loai_Hinh", SqlDbType.Int, ParameterDirection.Input, ff.txtLoai_Hinh.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Cap_Hoc", SqlDbType.Int, ParameterDirection.Input, ff.txtCap_Hoc.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Ten_Nuoc", SqlDbType.Int, ParameterDirection.Input, ff.txtTen_Nuoc.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Ten_Co_So", SqlDbType.Int, ParameterDirection.Input, ff.txtTen_Co_So.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@CNganh_DT", SqlDbType.Int, ParameterDirection.Input, ff.txtCNganh_DT.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Thang_BD", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtThang_BD.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Thang_KT", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtThang_KT.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Loai_TN_T", SqlDbType.NVarChar, ParameterDirection.Input, ff.cboLoai_TN_T.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Bang_Cap", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtBang_Cap.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Luan_An", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtLuan_An.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Dung_CNCT", SqlDbType.Bit, ParameterDirection.Input, ff.chkDung_CNCT.Checked));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@UserID", SqlDbType.Int, ParameterDirection.Input, MyCommon.CurrentUserID));

                    SqlHelper.ExecuteNonQuery(MyTran, CommandType.Text, sqlInsert, arrParameters);

                }
                MyTran.Commit();
                MyCommon.ShowMessage("Cập nhật thành công");
                BindDataToGridQT_DT();
            }
            catch (Exception _ex)
            {
                MyTran.Rollback();
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnSuaQT_DT_Click(object sender, EventArgs e)
        {
            SqlTransaction MyTran = SqlHelper.BeginTransaction();

            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }
                if (MainGridViewDaoTao.RowCount == 0)
                {
                    MyCommon.ShowDialogMessage("Bạn cần chọn một nội dung để sửa");
                    return;
                }
                frmCanBoQT_DT ff = new frmCanBoQT_DT();
                ff.SelectedDauMoiID = SelectedDauMoiID;


                List<SqlParameter> arrParameters = new List<SqlParameter>();
                arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));
                arrParameters.Add(SqlHelper.CreateParameterObject("@ID", SqlDbType.Int, ParameterDirection.Input, GetString(dgQT_DT, "ID")));


                DataTable temDT = SqlHelper.ExecuteDataTable(CommandType.Text, "Select CD.*  From tblQT_DT CD Where CD.Khoa=@Khoa And CD.ID=@ID And CD.DauMoiID='" + SelectedDauMoiID + "' ", arrParameters);

                ff.txtLoai_Hinh.Tag = temDT.Rows[0]["Loai_Hinh"];
                ff.txtLoai_Hinh.Text = MyCommon.GetTuDien(MyConst.TD.LoaiHinh.Ma, ff.txtLoai_Hinh.Tag, temDT.Rows[0]["DauMoiID"].ToString());

                ff.txtCap_Hoc.Tag = temDT.Rows[0]["Cap_Hoc"];
                ff.txtCap_Hoc.Text = MyCommon.GetTuDien(MyConst.TD.CapHoc.Ma, ff.txtCap_Hoc.Tag, temDT.Rows[0]["DauMoiID"].ToString());

                ff.txtTen_Nuoc.Tag = temDT.Rows[0]["Ten_Nuoc"];
                ff.txtTen_Nuoc.Text = MyCommon.GetTuDien(MyConst.TD.Nuoc.Ma, ff.txtTen_Nuoc.Tag, temDT.Rows[0]["DauMoiID"].ToString());

                ff.txtTen_Co_So.Tag = temDT.Rows[0]["Ten_Co_So"];
                ff.txtTen_Co_So.Text = MyCommon.GetTuDien(MyConst.TD.Truong.Ma, ff.txtTen_Co_So.Tag, temDT.Rows[0]["DauMoiID"].ToString());

                ff.txtCNganh_DT.Tag = temDT.Rows[0]["CNganh_DT"];
                ff.txtCNganh_DT.Text = MyCommon.GetTuDien(MyConst.TD.Ng_CNDT.Ma, ff.txtCNganh_DT.Tag, temDT.Rows[0]["DauMoiID"].ToString());


                MyCommon.SetValueMMyyyy(temDT, ff.txtThang_BD);
                MyCommon.SetValueMMyyyy(temDT, ff.txtThang_KT);
                ff.cboLoai_TN_T.Tag = temDT.Rows[0]["Loai_TN_T"].ToString();

                MyCommon.SetValue(temDT, ff.txtBang_Cap);
                MyCommon.SetValue(temDT, ff.txtLuan_An);
                MyCommon.SetValue(temDT, ff.chkDung_CNCT);

                if (ff.ShowDialog() == DialogResult.OK)
                {
                    string sqlUpdateQT_DT = "Update tblQT_DT Set Loai_Hinh=@Loai_Hinh, Cap_Hoc=@Cap_Hoc, Ten_Nuoc=@Ten_Nuoc, Ten_Co_So=@Ten_Co_So, CNganh_DT=@CNganh_DT, Thang_BD=@Thang_BD, Thang_KT=@Thang_KT, Loai_TN_T=@Loai_TN_T, Bang_Cap=@Bang_Cap, Luan_An=@Luan_An, Dung_CNCT=@Dung_CNCT, UserID=@UserID, UpdateDate=GetDate() Where Khoa=@Khoa And ID=@ID And DauMoiID='" + SelectedDauMoiID + "' ";

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Loai_Hinh", SqlDbType.Int, ParameterDirection.Input, ff.txtLoai_Hinh.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Cap_Hoc", SqlDbType.Int, ParameterDirection.Input, ff.txtCap_Hoc.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Ten_Nuoc", SqlDbType.Int, ParameterDirection.Input, ff.txtTen_Nuoc.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Ten_Co_So", SqlDbType.Int, ParameterDirection.Input, ff.txtTen_Co_So.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@CNganh_DT", SqlDbType.Int, ParameterDirection.Input, ff.txtCNganh_DT.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Thang_BD", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtThang_BD.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Thang_KT", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtThang_KT.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Loai_TN_T", SqlDbType.NVarChar, ParameterDirection.Input, ff.cboLoai_TN_T.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Bang_Cap", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtBang_Cap.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Luan_An", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtLuan_An.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Dung_CNCT", SqlDbType.Bit, ParameterDirection.Input, ff.chkDung_CNCT.Checked));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@UserID", SqlDbType.Int, ParameterDirection.Input, MyCommon.CurrentUserID));

                    SqlHelper.ExecuteNonQuery(MyTran, CommandType.Text, sqlUpdateQT_DT, arrParameters);

                }
                MyTran.Commit();
                MyCommon.ShowMessage("Cập nhật thành công");
                BindDataToGridQT_DT();
            }
            catch (Exception _ex)
            {
                MyTran.Rollback();
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnXoaQT_DT_Click(object sender, EventArgs e)
        {
            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }

                if (MainGridViewDaoTao.RowCount == 0)
                {
                    MyCommon.ShowDialogMessage("Bạn cần chọn một nội dung để xóa");
                    return;
                }


                if (ShowConfirmMessage("Bạn có chắc chắn xóa?") == DialogResult.Yes)
                {
                    string sqlUpdate = "Update tblQT_DT Set Deleted=1 " +
                                    "Where AutoID=" + GetString(dgQT_DT, "AutoIDDaoTao");

                    SqlHelper.ExecuteNonQuery(CommandType.Text, sqlUpdate);

                }

                BindDataToGridQT_DT();
            }
            catch (Exception _ex)
            {
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnThemQT_DG_Click(object sender, EventArgs e)
        {
            SqlTransaction MyTran = SqlHelper.BeginTransaction();

            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }
                frmCanBoQT_DG ff = new frmCanBoQT_DG();
                ff.SelectedDauMoiID = SelectedDauMoiID;
                if (ff.ShowDialog() == DialogResult.OK)
                {
                    string sqlInsert = "Insert Into tblQT_DG(ID, Khoa, DauMoiID, SKien_DGia, Thang_SK, NDung_SK, Ghi_Chu, UserID, CreateDate) " +
                                    "Values(@ID, @Khoa, '" + SelectedDauMoiID + "', @SKien_DGia, @Thang_SK, @NDung_SK, @Ghi_Chu, @UserID, GetDate()) ";

                    List<SqlParameter> arrParameters = new List<SqlParameter>();

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));

                    int iID = Util.ToInt(SqlHelper.ExecuteScalar(MyTran, CommandType.Text, "Select Max(ID) From tblQT_DG Where Khoa=@Khoa ", arrParameters)) + 1;

                    arrParameters.Add(SqlHelper.CreateParameterObject("@ID", SqlDbType.Int, ParameterDirection.Input, iID));

                    arrParameters.Add(SqlHelper.CreateParameterObject("@SKien_DGia", SqlDbType.Int, ParameterDirection.Input, ff.txtSKien_DGia.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Thang_SK", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtThang_SK.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@NDung_SK", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtNDung_SK.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Ghi_Chu", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtGhi_Chu.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@UserID", SqlDbType.Int, ParameterDirection.Input, MyCommon.CurrentUserID));

                    SqlHelper.ExecuteNonQuery(MyTran, CommandType.Text, sqlInsert, arrParameters);

                }
                MyTran.Commit();
                MyCommon.ShowMessage("Cập nhật thành công");
                BindDataToGridQT_DG();
            }
            catch (Exception _ex)
            {
                MyTran.Rollback();
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnSuaQT_DG_Click(object sender, EventArgs e)
        {
            SqlTransaction MyTran = SqlHelper.BeginTransaction();

            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }
                if (MainGridViewSuKien.RowCount == 0)
                {
                    MyCommon.ShowDialogMessage("Bạn cần chọn một nội dung để sửa");
                    return;
                }
                frmCanBoQT_DG ff = new frmCanBoQT_DG();
                ff.SelectedDauMoiID = SelectedDauMoiID;


                List<SqlParameter> arrParameters = new List<SqlParameter>();
                arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));
                arrParameters.Add(SqlHelper.CreateParameterObject("@ID", SqlDbType.Int, ParameterDirection.Input, GetString(dgQT_DG, "ID")));


                DataTable temDT = SqlHelper.ExecuteDataTable(CommandType.Text, "Select CD.*  From tblQT_DG CD  Where CD.Khoa=@Khoa And CD.ID=@ID And CD.DauMoiID='" + SelectedDauMoiID + "' ", arrParameters);

                ff.txtSKien_DGia.Tag = temDT.Rows[0]["SKien_DGia"];
                ff.txtSKien_DGia.Text = MyCommon.GetTuDien(MyConst.TD.SK_DGia.Ma, ff.txtSKien_DGia.Tag, temDT.Rows[0]["DauMoiID"].ToString());


                MyCommon.SetValue(temDT, ff.txtGhi_Chu);
                MyCommon.SetValue(temDT, ff.txtNDung_SK);
                MyCommon.SetValue(temDT, ff.txtSKien_DGia);
                MyCommon.SetValueMMyyyy(temDT, ff.txtThang_SK);

                if (ff.ShowDialog() == DialogResult.OK)
                {
                    string sqlUpdateQT_DG = "Update tblQT_DG Set SKien_DGia=@SKien_DGia,Thang_SK=@Thang_SK, NDung_SK=@NDung_SK, Ghi_Chu=@Ghi_Chu, UserID=@UserID, UpdateDate=GetDate() Where Khoa=@Khoa And ID=@ID And DauMoiID='" + SelectedDauMoiID + "' ";

                    arrParameters.Add(SqlHelper.CreateParameterObject("@SKien_DGia", SqlDbType.Int, ParameterDirection.Input, ff.txtSKien_DGia.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Thang_SK", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtThang_SK.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@NDung_SK", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtNDung_SK.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Ghi_Chu", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtGhi_Chu.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@UserID", SqlDbType.Int, ParameterDirection.Input, MyCommon.CurrentUserID));

                    SqlHelper.ExecuteNonQuery(MyTran, CommandType.Text, sqlUpdateQT_DG, arrParameters);

                }
                MyTran.Commit();
                MyCommon.ShowMessage("Cập nhật thành công");
                BindDataToGridQT_DG();
            }
            catch (Exception _ex)
            {
                MyTran.Rollback();
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnXoaQT_DG_Click(object sender, EventArgs e)
        {
            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }

                if (MainGridViewSuKien.RowCount == 0)
                {
                    MyCommon.ShowDialogMessage("Bạn cần chọn một nội dung để xóa");
                    return;
                }



                if (ShowConfirmMessage("Bạn có chắc chắn xóa?") == DialogResult.Yes)
                {
                    string sqlUpdate = "Update tblQT_DG Set Deleted=1 " +
                                    "Where AutoID=" + GetString(dgQT_DG, "AutoIDSuKien");

                    SqlHelper.ExecuteNonQuery(CommandType.Text, sqlUpdate);

                }

                BindDataToGridQT_DG();
            }
            catch (Exception _ex)
            {
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnThemThanNhan_Click(object sender, EventArgs e)
        {
            SqlTransaction MyTran = SqlHelper.BeginTransaction();

            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }
                frmCanBoThanNhan ff = new frmCanBoThanNhan();
                ff.SelectedDauMoiID = SelectedDauMoiID;
                if (ff.ShowDialog() == DialogResult.OK)
                {
                    string sqlInsert = "Insert Into tblThanNhan(ID, Khoa, DauMoiID, Ten_TNhan, Nam_Sinh, Quan_He, DDiem_CT_T, DDiem_KT_T, Nghe, Dia_Chi, Ghi_Chu, UserID, CreateDate) " +
                                    "Values(@ID, @Khoa, '" + SelectedDauMoiID + "', @Ten_TNhan, @Nam_Sinh, @Quan_He, @DDiem_CT_T, @DDiem_KT_T, @Nghe, @Dia_Chi, @Ghi_Chu, @UserID, GetDate()) ";

                    List<SqlParameter> arrParameters = new List<SqlParameter>();

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));

                    int iID = Util.ToInt(SqlHelper.ExecuteScalar(MyTran, CommandType.Text, "Select Max(ID) From tblThanNhan Where Khoa=@Khoa ", arrParameters)) + 1;

                    arrParameters.Add(SqlHelper.CreateParameterObject("@ID", SqlDbType.Int, ParameterDirection.Input, iID));

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Ten_TNhan", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtTen_TNhan.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Nam_Sinh", SqlDbType.Int, ParameterDirection.Input, Util.ToInt(ff.txtNam_Sinh.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Quan_He", SqlDbType.Int, ParameterDirection.Input, ff.txtQuan_He.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@DDiem_CT_T", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtDDiem_CT_T.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@DDiem_KT_T", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtDDiem_KT_T.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Nghe", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtNghe.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Dia_Chi", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtDia_Chi.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Ghi_Chu", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtGhi_Chu.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@UserID", SqlDbType.Int, ParameterDirection.Input, MyCommon.CurrentUserID));

                    SqlHelper.ExecuteNonQuery(MyTran, CommandType.Text, sqlInsert, arrParameters);

                }
                MyTran.Commit();
                MyCommon.ShowMessage("Cập nhật thành công");
                BindDataToGridThanNhan();
            }
            catch (Exception _ex)
            {
                MyTran.Rollback();
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnSuaThanNhan_Click(object sender, EventArgs e)
        {
            SqlTransaction MyTran = SqlHelper.BeginTransaction();

            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }
                if (MainGridViewGiaDinh.RowCount == 0)
                {
                    MyCommon.ShowDialogMessage("Bạn cần chọn một nội dung để sửa");
                    return;
                }
                frmCanBoThanNhan ff = new frmCanBoThanNhan();
                ff.SelectedDauMoiID = SelectedDauMoiID;


                List<SqlParameter> arrParameters = new List<SqlParameter>();
                arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));
                arrParameters.Add(SqlHelper.CreateParameterObject("@ID", SqlDbType.Int, ParameterDirection.Input, GetString(dgThanNhan, "ID")));


                DataTable temDT = SqlHelper.ExecuteDataTable(CommandType.Text, "Select CD.*  From tblThanNhan CD  Where CD.Khoa=@Khoa And CD.ID=@ID And CD.DauMoiID='" + SelectedDauMoiID + "' ", arrParameters);

                ff.txtQuan_He.Tag = temDT.Rows[0]["Quan_He"];
                ff.txtQuan_He.Text = MyCommon.GetTuDien(MyConst.TD.QuanHe.Ma, ff.txtQuan_He.Tag, temDT.Rows[0]["DauMoiID"].ToString());


                MyCommon.SetValue(temDT, ff.txtDDiem_CT_T);
                MyCommon.SetValue(temDT, ff.txtDDiem_KT_T);
                MyCommon.SetValue(temDT, ff.txtDia_Chi);
                MyCommon.SetValue(temDT, ff.txtGhi_Chu);

                MyCommon.SetValue(temDT, ff.txtNam_Sinh);
                MyCommon.SetValue(temDT, ff.txtNghe);
                MyCommon.SetValue(temDT, ff.txtTen_TNhan);

                if (ff.ShowDialog() == DialogResult.OK)
                {
                    string sqlUpdateThanNhan = "Update tblThanNhan Set Ten_TNhan=@Ten_TNhan, Nam_Sinh=@Nam_Sinh, Quan_He=@Quan_He, DDiem_CT_T=@DDiem_CT_T, DDiem_KT_T=@DDiem_KT_T, Nghe=@Nghe, Dia_Chi=@Dia_Chi, Ghi_Chu=@Ghi_Chu, UserID=@UserID, UpdateDate=GetDate() Where Khoa=@Khoa And ID=@ID And DauMoiID='" + SelectedDauMoiID + "' ";

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Ten_TNhan", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtTen_TNhan.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Nam_Sinh", SqlDbType.Int, ParameterDirection.Input, Util.ToInt(ff.txtNam_Sinh.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Quan_He", SqlDbType.Int, ParameterDirection.Input, ff.txtQuan_He.Tag));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@DDiem_CT_T", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtDDiem_CT_T.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@DDiem_KT_T", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtDDiem_KT_T.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Nghe", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtNghe.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Dia_Chi", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtDia_Chi.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Ghi_Chu", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtGhi_Chu.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@UserID", SqlDbType.Int, ParameterDirection.Input, MyCommon.CurrentUserID));

                    SqlHelper.ExecuteNonQuery(MyTran, CommandType.Text, sqlUpdateThanNhan, arrParameters);

                }
                MyTran.Commit();
                MyCommon.ShowMessage("Cập nhật thành công");
                BindDataToGridThanNhan();
            }
            catch (Exception _ex)
            {
                MyTran.Rollback();
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnXoaThanNhan_Click(object sender, EventArgs e)
        {
            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }

                if (MainGridViewGiaDinh.RowCount == 0)
                {
                    MyCommon.ShowDialogMessage("Bạn cần chọn một nội dung để xóa");
                    return;
                }


                if (ShowConfirmMessage("Bạn có chắc chắn xóa?") == DialogResult.Yes)
                {
                    string sqlUpdate = "Update tblThanNhan Set Deleted=1 " +
                                    "Where AutoID=" + GetString(dgThanNhan, "AutoIDThanNhan");

                    SqlHelper.ExecuteNonQuery(CommandType.Text, sqlUpdate);

                }

                BindDataToGridThanNhan();
            }
            catch (Exception _ex)
            {
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnThemKhac_Click(object sender, EventArgs e)
        {
            SqlTransaction MyTran = SqlHelper.BeginTransaction();

            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }
                frmCanBoKhac ff = new frmCanBoKhac();
                ff.SelectedDauMoiID = SelectedDauMoiID;
                if (ff.ShowDialog() == DialogResult.OK)
                {
                    string sqlInsert = "Insert Into tblKhac(ID, Khoa, DauMoiID, Thang_SK, Noi_Dung, UserID, CreateDate) " +
                                    "Values(@ID, @Khoa, '" + SelectedDauMoiID + "', @Thang_SK, @Noi_Dung, @UserID, GetDate()) ";

                    List<SqlParameter> arrParameters = new List<SqlParameter>();

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));

                    int iID = Util.ToInt(SqlHelper.ExecuteScalar(MyTran, CommandType.Text, "Select Max(ID) From tblKhac Where Khoa=@Khoa ", arrParameters)) + 1;

                    arrParameters.Add(SqlHelper.CreateParameterObject("@ID", SqlDbType.Int, ParameterDirection.Input, iID));

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Thang_SK", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtThang_SK.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Noi_Dung", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtNoi_Dung.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@UserID", SqlDbType.Int, ParameterDirection.Input, MyCommon.CurrentUserID));

                    SqlHelper.ExecuteNonQuery(MyTran, CommandType.Text, sqlInsert, arrParameters);

                }
                MyTran.Commit();
                MyCommon.ShowMessage("Cập nhật thành công");
                BindDataToGridKhac();
            }
            catch (Exception _ex)
            {
                MyTran.Rollback();
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnSuaKhac_Click(object sender, EventArgs e)
        {
            SqlTransaction MyTran = SqlHelper.BeginTransaction();

            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }
                if (MainGridViewKhac.RowCount == 0)
                {
                    MyCommon.ShowDialogMessage("Bạn cần chọn một nội dung để sửa");
                    return;
                }
                frmCanBoKhac ff = new frmCanBoKhac();
                ff.SelectedDauMoiID = SelectedDauMoiID;


                List<SqlParameter> arrParameters = new List<SqlParameter>();
                arrParameters.Add(SqlHelper.CreateParameterObject("@Khoa", SqlDbType.NVarChar, ParameterDirection.Input, SelectedKhoa));
                arrParameters.Add(SqlHelper.CreateParameterObject("@ID", SqlDbType.Int, ParameterDirection.Input, GetString(dgKhac, "ID")));


                DataTable temDT = SqlHelper.ExecuteDataTable(CommandType.Text, "Select CD.*  From tblKhac CD  Where CD.Khoa=@Khoa And CD.ID=@ID And CD.DauMoiID='" + SelectedDauMoiID + "' ", arrParameters);
                MyCommon.SetValue(temDT, ff.txtNoi_Dung);
                MyCommon.SetValueMMyyyy(temDT, ff.txtThang_SK);

                if (ff.ShowDialog() == DialogResult.OK)
                {
                    string sqlUpdateKhac = "Update tblKhac Set Thang_SK=@Thang_SK, Noi_Dung=@Noi_Dung, UserID=@UserID, UpdateDate=GetDate() Where Khoa=@Khoa And ID=@ID  And DauMoiID='" + SelectedDauMoiID + "' ";

                    arrParameters.Add(SqlHelper.CreateParameterObject("@Thang_SK", SqlDbType.DateTime, ParameterDirection.Input, Util.DATETIME.ToDateFromMMyyyy(ff.txtThang_SK.Text.Trim())));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@Noi_Dung", SqlDbType.NVarChar, ParameterDirection.Input, ff.txtNoi_Dung.Text.Trim()));
                    arrParameters.Add(SqlHelper.CreateParameterObject("@UserID", SqlDbType.Int, ParameterDirection.Input, MyCommon.CurrentUserID));

                    SqlHelper.ExecuteNonQuery(MyTran, CommandType.Text, sqlUpdateKhac, arrParameters);

                }
                MyTran.Commit();
                MyCommon.ShowMessage("Cập nhật thành công");
                BindDataToGridKhac();
            }
            catch (Exception _ex)
            {
                MyTran.Rollback();
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnXoaKhac_Click(object sender, EventArgs e)
        {
            try
            {
                if (Action != MyConst.ACTION.Update)
                {
                    MyCommon.ShowDialogMessage("Bạn không có quyền cập nhật hoặc bạn cần lưu thông tin nếu là thêm mới cán bộ trước khi làm việc này");
                    return;
                }

                if (MainGridViewKhac.RowCount == 0)
                {
                    MyCommon.ShowDialogMessage("Bạn cần chọn một nội dung để xóa");
                    return;
                }



                if (ShowConfirmMessage("Bạn có chắc chắn xóa?") == DialogResult.Yes)
                {
                    string sqlUpdate = "Update tblKhac Set Deleted=1 " +
                                    "Where AutoID=" + GetString(dgKhac, "AutoIDKhac");

                    SqlHelper.ExecuteNonQuery(CommandType.Text, sqlUpdate);

                }

                BindDataToGridKhac();
            }
            catch (Exception _ex)
            {
                MyCommon.ShowDialogMessage(_ex.Message);
            }
        }

        private void btnInHoSo_Click(object sender, EventArgs e)
        {
            if (Action == MyConst.ACTION.Insert)
            {
                ShowInfoMessage("Bạn chưa lưu hồ sơ");
                return;
            }
            MyCommon.InHoSo(SelectedKhoa, SelectedDauMoiID);
        }

        private void txtHoVaTen_Leave(object sender, EventArgs e)
        {
            if (txtHoTen_KS.Text.Trim() == "")
                txtHoTen_KS.Text = txtHoVaTen.Text;
        }

        private void txtSo_Hieu_SQ_Leave(object sender, EventArgs e)
        {
            if (txtSo_Hieu_SQ.Text.Trim() == "") return;

            if (txtSo_Hieu_SQ.Text.Trim().Length != 8)
                txtSo_Hieu_SQ.BackColor = Color.Red;
            else
            {

                int tong = 0;
                for (int i = 0; i < 7; i++)
                {
                    tong += Util.ToInt(txtSo_Hieu_SQ.Text.Trim().Substring(i, 1)) * (i + 1);
                }
                int sodu = 0, nguyen = 0;
                nguyen = (int)tong / 10;
                sodu = tong - (nguyen * 10);
                if (sodu.ToString() != txtSo_Hieu_SQ.Text.Trim().Substring(7, 1))
                    txtSo_Hieu_SQ.BackColor = Color.Red;
                else
                    txtSo_Hieu_SQ.BackColor = txtSo_Hieu_QN.BackColor;
            }
        }


        private void txtNgayThangNam_Leave(object sender, EventArgs e)
        {
            TextEdit txtTem = (TextEdit)sender;
            if (!IsNull(txtTem) && !MyCommon.MyDateTime.IsDayMonthYear(txtTem.Text))
            {
                txtTem.Text = "";
                MessageBox.Show("Ngày tháng năm không đúng định dạng. ví dụ: 01/01/2013 hoặc 1/1/2013");
                txtTem.Focus();
            }
        }
        private void txtThangNam_Leave(object sender, EventArgs e)
        {
            TextEdit txtTem = (TextEdit)sender;
            if (!IsNull(txtTem) && !MyCommon.MyDateTime.IsMonthYear(txtTem.Text))
            {
                txtTem.Text = "";
                MessageBox.Show("Tháng năm không đúng định dạng. ví dụ: 01/2013");
                txtTem.Focus();
            }
        }
        private void txtNgay_VDang_Leave(object sender, EventArgs e)
        {
            txtThangNam_Leave(sender, e);
            if (!IsNull(txtNgay_VDang) && IsNull(txtNgay_CDCT))
            {
                string[] arr = txtNgay_VDang.Text.Split('/');
                txtNgay_CDCT.Text = arr[0] + "/" + (Util.ToInt(arr[1]) + 1).ToString();
            }
        }




        private void simpleButton2_Click_1(object sender, EventArgs e)
        {
            if (xtraTabControlNgoaiNguVaTiengDanToc.Height == 200)
                xtraTabControlNgoaiNguVaTiengDanToc.Height = 600;
            else
                xtraTabControlNgoaiNguVaTiengDanToc.Height = 200;
        }





        private void btnThuNhoQT_Click_1(object sender, EventArgs e)
        {
            if (xtraTabControl1.Height == 310)
                xtraTabControl1.Height = 700;
            else
                xtraTabControl1.Height = 310;
        }




    }
}